私は言葉のはしごのような問題を抱えています。 元々、私は文字列リスト:paths = [[A]]
を持っています。 は今B、C及びDは、一つだけ違うの手紙を持っているすべての文字列は、私が何をしたいどのようなA.に を比較しているリストを複製して別の方法で操作するには?
[[A]] with [B,C,D] -> paths = [[A,B], [A,C], [A,D]]
を作ることです。しかし、私は[[A]]
スリーをコピーする場合paths = [paths[0]]*3
を使用してpaths = [[A], [A], [A]]
を準備するtames
i=0
for word in [B,C,D]:
newpath = paths[i]
paths.append(newpath.append(word))
i += 1
[[A, B, C, D], [A, B, C, D], [A, B, C, D]]
を示しています。それは各コピーで同じ操作と思われます。私がpaths = [paths[0] for i in range(3)]
を使用したとしても、それは同じです。どうすればそれを避けることができますか?私のコードに何が問題なのですか?
ありがとうございました!
可能な複製(http://stackoverflow.com/questions/ [リストのPythonのリストを、変更が予期せずにサブリストに反映しました] 240178/python-list-of-lists-changes-across-sublists-unexpectedly) – miradulo
私はこの方法を試しました。私は "paths = [paths(0)for range(3)]"を試みました。 – Hsiang