私はこのコードを書きましたが、正確に何が間違っていたのかわかりません。「Route」クラスの 2 つのインスタンスを作成し、どういうわけか「coords」リストの値を共有します。
import random
class Route():
def __init__(self):
self.coords = []
self.distance = 0
def Generate(self, cities):
random.shuffle(cities)
self.coords = cities
class Citymap():
def __init__(self, nr):
self.Nr_of_cities = nr
self.cities = []
def Generate_map(self):
for i in range(0, self.Nr_of_cities):
self.cities.append((random.randint(0, 750), random.randint(0, 750)))
city = Citymap(6)
city.Generate_map()
a = Route()
a.Generate(city.cities)
b = Route()
b.Generate(city.cities)
print a.coords
print b.coords
a と b の出力:
[(429, 713), (336, 611), (555, 465), (397, 227), (222, 412), (491, 322)]
[(429, 713), (336, 611), (555, 465), (397, 227), (222, 412), (491, 322)]
a と b は異なるインスタンスである必要がありますが、どういうわけか「coords」変数を共有してしまいます。誰か助けてくれませんか?