Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 访问循环中节点的属性_Python_Networkx - Fatal编程技术网

Python 访问循环中节点的属性

Python 访问循环中节点的属性,python,networkx,Python,Networkx,我有以下节点列表。我想得到每个节点的经度和纬度 ('11', {'Internal': 1, 'Latitude': -31.93333, 'Country': u'Australia', 'id': 11, 'Longitude': 115.83333, 'label': u'Perth1'}) ('10', {'Internal': 1, 'Latitude': -35.28346, 'Country': u'Australia', 'id': 10, 'Longitude': 149.12

我有以下节点列表。我想得到每个节点的经度和纬度

('11', {'Internal': 1, 'Latitude': -31.93333, 'Country': u'Australia', 'id': 11, 'Longitude': 115.83333, 'label': u'Perth1'})
('10', {'Internal': 1, 'Latitude': -35.28346, 'Country': u'Australia', 'id': 10, 'Longitude': 149.12807, 'label': u'Canberra2'})
('13', {'Internal': 1, 'Latitude': -34.93333, 'Country': u'Australia', 'id': 13, 'Longitude': 138.6, 'label': u'Adelaide1'})
('12', {'Internal': 1, 'Latitude': -31.93333, 'Country': u'Australia', 'id': 12, 'Longitude': 115.83333, 'label': u'Perth2'})
('15', {'Internal': 1, 'Latitude': -37.814, 'Country': u'Australia', 'id': 15, 'Longitude': 144.96332, 'label': u'Melbourne1'})
('14', {'Internal': 1, 'Latitude': -34.93333, 'Country': u'Australia', 'id': 14, 'Longitude': 138.6, 'label': u'Adelaide2'})
('17', {'Internal': 1, 'Latitude': -23.7, 'Country': u'Australia', 'id': 17, 'Longitude': 133.88333, 'label': u'Alice Springs'})
('16', {'Internal': 1, 'Latitude': -37.814, 'Country': u'Australia', 'id': 16, 'Longitude': 144.96332, 'label': u'Melbourne2'})
我知道你喜欢什么

G.nodes['11']['longitude']
G.nodes['10']['longitude']
G.nodes['13']['longitude'].

但是我想要灵活的访问,这意味着如果节点数量增加,就不需要更改代码。我如何才能做到这一点?

只需遍历节点即可。迭代节点的“最佳”方法是使用
G.nodes\u iter()
(生成器),但也可以使用
G.nodes()
(列表):

如果您关心列表的顺序,则需要使用
G.nodes()
并对其进行适当排序



注意---在您的示例中,您有
G.nodes[][]
。那不行。它应该是
G.node[][]

只需遍历节点即可。迭代节点的“最佳”方法是使用
G.nodes\u iter()
(生成器),但也可以使用
G.nodes()
(列表):

如果您关心列表的顺序,则需要使用
G.nodes()
并对其进行适当排序



注意---在您的示例中,您有
G.nodes[][]
。那不行。它应该是
G.node[][]

迭代节点的最简洁方法如下:

for i in G:
    G.node[i]['longitude']

迭代节点的最简洁方法如下所示:

for i in G:
    G.node[i]['longitude']

列表中节点的格式与访问方式不匹配,可以修复吗?列表中节点的格式与访问方式不匹配,可以修复吗?