從泡菜加載你的圖形之後,您可以先找到你後的顏色的所有邊緣(見documentation):
be = []
for e in G.edges_iter():
if G.edge[e[0]][e[1]]['color'] == 'blue': # or G[e[0]][e[1]]['color']
be.append(e)
或用列表理解:
be = [(n1, n2) for n1, n2 in G.edges_iter() if G.edge[n1][n2]['color'] == 'blue']
,然後選擇與random
模塊的幫助,例如,隨機邊緣choice
或sample
:
import random
# Select one random edge...
random_blue_edge = random.choice(be)
# ... or several random edges, 3 in this case
random_blue_edges = random.sample(be, 3)
但是,一定要檢查您的通話be
或random.choice
之前random.sample
。如果在致電random.choice
時序列爲空,您將得到一個IndexError
,並且如果序列比您要在random.sample
中進行採樣的序號短,您將得到一個ValueError
。