我试图在python中为合著图创建一个邻接列表。 我为作者编了一本词典
{'a1': ' A-ming Hao',
'a2': ' Qing-zhen Wang',
'a3': ' Xiao-long Li',
'a4': ' Ming-da Zhai'}
我用这种方法创造了边缘。你知道吗
g=nx.Graph()
g.add_edge(y[0]['a1'],y[0]['a2'])
g.add_edge(y[0]['a2'],y[0]['a3'])
g.add_edge(y[0]['a3'],y[0]['a4'])
g.add_edge(y[0]['a4'],y[0]['a1'])
但我想用for循环
for key,val in (y[0].items()):
g.add_edge(y[0][key],y[0][key])
我希望这个循环遍历每个键。 像这样创造边缘
g.add_edge(y[0][key],y[0][key+1])
这样就可以在key[a1]
和key[a2],
之间创建边。
在我的for循环中,它实际上是key[a1]
和key[a1]
之间的边。你知道吗
当它到达最后一个key[a4]
时,首先连接它key[a1]
你知道吗?你知道吗
您可以将
dict.keys()
上的列表切片与zip()
结合使用,以将元组放入图形中:输出:
使用这些元组,您可以执行以下操作:
请记住,键的显示顺序可能会有所不同-如果需要确保插入顺序,则需要使用:
python 3.7
up保证dict的插入顺序CPython 3.6
up按实现细节/副作用具有插入顺序开始(或使用
keys = sorted(d.keys())
)对于dict插入顺序,读取信息@Are dictionaries ordered in Python 3.6+?
相关问题 更多 >
编程相关推荐