如何在networkx中没有密钥的情况下访问节点属性?

时间:2018-04-27 13:55:23

标签: python python-3.x python-2.7 networkx

请为此我需要帮助:

我需要在不使用密钥的情况下访问节点属性:

我有这段代码:

csv_F = csv.reader(open("MyFile.txt"),delimiter = '/')

for line in csv_F:    
    node = line[0]    
    attribute = line[1:] # there's no key to specify attribute   
    G.add_node(line[0], 'myattibute' = attribute)

我现在如何获得所有节点属性?对于没有密钥的图G中的每个节点?

我试过这个并没有奏效:

for nodex in G.nodes(data=True):  
    for b in (nodex[1]):
        print(b, " --- ")

并且仅返回

'myattribute ---'   
'myattribute ---'

...

感谢您的回答。

1 个答案:

答案 0 :(得分:0)

你的麻烦在这里:

for nodex in G.nodes(data=True):  
    for b in (nodex[1]):
        print(b, " --- ")

nodex[1]是一个包含所有属性的字典。当您迭代for b in D: D是一个词典时,您将重复密钥。因此,在您的情况下,您要打印出密钥b'myattribute'),但我怀疑您需要nodex[1][b],这是值。