가이 코드파이썬 목록 대입
이제class coordenates:
x = 0
y = 0
coor = coordenates()
coor.x=0
coor.y=0
list = []
list.append(coor)
list.append(coor)
에게있어,이 문제는 또한 어떻게 든 list[1].x
을 modifing에있다
list[0].x=100
내가 업데이트 할 때이다!
print str(list[0].x)
>> 100
print str(list[1].x)
>> 100
0
은 업데이트하지 않아야합니다. append()
은 0과 1의 위치에서 같은 위치를 가리키는 동일한 객체를 생성합니까? 왜 2 개의 다른 객체를 생성하면 문제가 해결됩니까?
을 두 번 목록에 동일한 개체를 추가합니다. 변경하면 두 색인에서 모두 변경됩니다. –
'append'는 같은 객체를 같은 메모리 위치에 생성하지 않습니다. * 동일한 객체를 명시 적으로 추가하고 있습니다. –