You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中提取图节点属性键值并分存至不同字典的实现方案

解决方案

修改后的代码

import networkx as nx

G = nx.read_gml('./networks/karate.gml', label=None)
bb = nx.betweenness_centrality(G)
cc = nx.closeness_centrality(G)
nx.set_node_attributes(G, bb, "Betweenness")
nx.set_node_attributes(G, cc, "Closeness")

# 获取Closeness值最大的节点数据
max_node = max(G.nodes(data=True), key=lambda x: x[1]['Closeness'])

# 拆分节点编号与属性字典,构造目标格式
node_num_dict = {'Number': max_node[0]}
node_attr_dict = max_node[1]

# 输出结果
print(node_num_dict)
print(node_attr_dict)

关键说明

  1. 直接移除了原代码中无实际作用的for g in G.nodes(): continue循环
  2. 将max()返回的元组(节点编号+属性字典)存入变量max_node,通过索引拆分出两部分内容
  3. 分别用拆分出的节点编号和属性字典,构造你需要的两个独立字典
  4. 直接打印两个字典即可得到期望的输出格式

运行结果

{'Number': 1}
{'Betweenness': 0.43763528138528146, 'Closeness': 0.5689655172413793}

内容的提问来源于stack exchange,提问作者user19092610

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 23:52:51