내가 (C 코드) 할 노력했다 : 나는이 코드 조각으로 행동처럼 유사한 포인터를 할 파이썬을 기다리고 있었다목록에 추가 할 때 왜 파이썬이 포인터 대신 값을 복사합니까?
int a = 2, b = 3, c = 4;
int* arr[3] = {&a, &b, &c};
for (int i = 0; i < 3; ++i) {
if (*(arr[i]) > 1) {
*(arr[i]) = 1
}
}
.
>>> a = 2
>>> b = 3
>>> c = 4
>>> for x in [a, b, c]:
... if x > 1:
... x = 1
...
>>> a,b,c
(2, 3, 4)
어떻게 C 코드와 같은 동작을 파이썬에서 얻을 수 있습니까?
아니요. 루프에서 "오류"가 발생합니다. 'x is a' ('b, c'에 대해서 등등)를 체크하면, 그것도 같은 대상이라는 것을 알 수 있습니다. – delnan