python 嵌套字典key_导致创建嵌套字典时出现KeyError

def pi_drug_target(graph, node):

pi_to_drug_nodes = P.neighbors(node)

nghr_targets = {}

for pi_drug in pi_to_drug_nodes:

nghr_targets[pi_drug] = {}

nghr_targets[pi_drug]['treated with'] = []

if B.has_node(pi_drug):

drug_target = B.neighbors(pi_drug)

for targets in drug_target:

nghr_targets[pi_drug]['treated with'].append(targets)

nghr_targets[targets]['treated with']['neighbors with'] = []

if G.has_node(targets):

gg_nodes = G.neighbors(targets)

for ggn in gg_nodes:

if G.has_node(ggn):

nghr_targets[pi_drug]['treated with']['neighbors with'].append(ggn)

return(nghr_targets)

KeyError Traceback (most recent call last)

in ()

----> 1 pi_drug_target(P, 'DO218719')

in pi_drug_target(graph, node)

12 for targets in drug_target:

13 nghr_targets[pi_drug]['is treated with'].append(targets)

---> 14 nghr_targets[targets]['treated with']['Gene neighbors with'] = []

15

16 if G.has_node(targets):

KeyError: 'CYP19A1'

我有3个networkx图p,B和G。我试图创建一个函数,当我在p图中输入一个节点时,它会找到给定节点的相邻节点。然后,迭代这些邻居,在另一个图(B)中找到它的邻居。然后,循环查看在

B图,并在另一个图(G)中再次找到邻域。我想创建一个嵌套字典,将节点显示为键,将邻居显示为值。这是我创建的代码,但是我得到了这个KeyError,尽管我检查了节点是否存在于图中。在

我刚开始编程和使用networkx。所以任何帮助都是感激的!谢谢您!在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值