将python字典转换为流程图

Posted

技术标签:

【中文标题】将python字典转换为流程图【英文标题】:Convert python dictionary to flowchart 【发布时间】:2013-09-28 02:30:09 【问题描述】:

我有一个程序会生成一个非常大的字典样式列表,看起来像这样:

"a":"b",
 "b":"c",
 "C":"d",
 "d":"b",
 "d":"e"

我想使用 pygame 之类的东西创建一个程序来生成一个流程图,该流程图使用箭头将所有第一个术语连接到最后一个术语。这将忽略重复的连接并在它们自身加倍时生成项目循环。

如果上面的列表被处理,它看起来像这样(请原谅手绘):

【问题讨论】:

在您的列表中,您有 d→e 边缘,而在您的草图中则有 c→e。还要注意大写字母。 【参考方案1】:

使用Graph Tool:

from graph_tool.all import *

g = Graph()

vals = [("a","b"), ("b","c"), ("c","d"), ("d","b"), ("c","e")]

vertexes_names = g.new_vertex_property("string") 
vertexes = 
for start, stop in vals:
    if start not in vertexes:
        vertexes[start] = g.add_vertex()
        vertexes_names[vertexes[start]] = start
    if stop not in vertexes:
        vertexes[stop] = g.add_vertex()
        vertexes_names[vertexes[stop]] = stop
    g.add_edge(vertexes[start], vertexes[stop])

graph_tool.stats.remove_parallel_edges(g)
graph_draw(g, vertex_text=vertexes_names, vertex_font_size=18, output="output.png")

【讨论】:

【参考方案2】:

当我需要这样做时,我使用了pydot 和graphviz

【讨论】:

以上是关于将python字典转换为流程图的主要内容,如果未能解决你的问题,请参考以下文章

python中如何将字符串转换为字典

Python - 如何将类似字典的字符串转换为字典[重复]

如何将 Python 字典转换为 JavaScript 哈希表?

将python字典转换为大写

如何将嵌套字典转换为 Python 元组?

将 Python 字典转换为 Pandas 数据框