Python에서 반복 변수 수정 재고
Python의 for 루프를 사용하여 시퀀스를 반복할 때 반복 변수. 다음 Python 코드를 고려하십시오.
for i in range(0, 10): if i == 5: i += 3 print(i)
예상 출력:
0 1 2 3 4 8 9
그러나 실제 출력은 다릅니다.
0 1 2 3 4 8 6 7 8 9
' 값이 왜 ' 루프 내에서는 변경되지 않습니다. 이를 수정하려면 어떻게 해야 합니까?
이유는 어떻게 해야 합니까? 루프는 Python에서 작동합니다. 각 루프 반복에는 새 범위를 생성하고 반복 변수에 새 값을 할당하는 작업이 포함됩니다. 루프 내에서 반복 변수를 수정하면 현재 반복 내의 값에만 영향을 미치고 후속 반복에는 영향을 주지 않습니다.
의도한 동작을 달성하려면 대신 while 루프를 활용할 수 있습니다. 수정된 코드는 다음과 같습니다.
i = 0 while i < 10: # Perform operations and modify 'i' as needed if i == 5: i += 3 print(i) # Increment 'i' manually within the loop i += 1
이 접근 방식은 단일 범위를 생성하고 'i'에 대한 수정 사항이 루프 실행 전체에 걸쳐 유지되도록 합니다.
위 내용은 For 루프의 반복 변수를 수정하면 Python에서 예상대로 작동하지 않는 이유는 무엇이며 어떻게 수정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!