頂点の番号が 0..n-1 のグラフを読みたい。次のコードを試しました:
myfile = open('test.in', 'r')
n = int(myfile.readline())
graph = [[]]*n
for line in myfile:
u, v, w = map(int, line.strip().split(' '))
graph[u].append((v, w))
print graph
しかし、うまくいきません。graph
のすべての要素が同じであることがわかりました。次に、次のコードを使用して修正します。
road = [[] for i in xrange(n)]
それは機能しますが、それほどきれいではありません。
この状況に対するより良い解決策があるかどうか、および最初のコードですべての要素が同じである理由を知りたいですか?