yEd でグラフを作成しました。エッジに属性があるかどうかを確認したいと思います。たとえば、一部のエッジにはラベルが付いていますが、ラベルが付いていないエッジもあります。これを行おうとすると、エラーが発生します。
for n, nbrs in G.adjacency_iter():
for nbr,eattr in nbrs.items():
evpn = eattr['vpn']
elabel = eattr['label'] #error is here
if evpn != "No":
nlabel = G[n].get("label")
platform = G[n].get("platform")
if G[nbr].get("platform") == platform:
g_vpn.add_nodes_from([n,nbr], label, platform) # I dont know if this way
#to set attributes is right
デフォルト値を設定しているため、vpn属性は機能しますが。すべてのエッジにラベル値を配置するだけでよいことはわかっていますが、プログラムでラベルが欠落しているかどうかを確認し、以下のようにデフォルト値を設定したいと考えています。一部のエッジでラベル属性が見つからないため、機能しませんが:
for e,v in G.edges():
if G[e][v].get("label") == ""
label = "".join("vedge",i)
i+=1
G[e][v]['label']=label
また、そのコードの残りの部分を確認して、改善が必要かどうか、またはいくつかの作業を簡単にする必要があるかどうかを教えてください。ありがとう