>백엔드 개발 >파이썬 튜토리얼 >\'for i in ar\' 루프 내에서 \'ar[i]\'를 사용하여 목록의 요소에 액세스할 때 IndexError가 발생하는 이유는 무엇입니까?

\'for i in ar\' 루프 내에서 \'ar[i]\'를 사용하여 목록의 요소에 액세스할 때 IndexError가 발생하는 이유는 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-31 21:04:02362검색

Why Do I Get an IndexError When Accessing Elements in a List with

"for i in ar" 내 "ar[i]"의 IndexError 이해

다음을 사용하여 목록의 요소를 합산하려고 할 때 for 루프에서 "ar[i]"를 사용하여 요소에 액세스하려고 하면 IndexError가 발생하는 경우가 많습니다. 이는 루프 내 반복자의 목적에 대한 오해로 인해 발생합니다.

반복자 변수의 역할

for 루프의 반복자 변수(이 경우 "i ")는 목록의 현재 요소를 나타냅니다. 예를 들어 "ar = [1, 5, 10]" 목록이 주어지면 "i"에는 값 1, 5, 10이 순차적으로 포함됩니다. "i"가 외부에 있는 5번째 요소에 액세스하려고 하면 오류가 발생합니다. 주어진 목록에 대해 유효한 인덱스 범위 0-2.

대체 루프 구성

이 문제를 해결하려면 목록을 인덱싱하지 않고 루프를 작성해야 합니다.

for i in ar:
    theSum = theSum + i

이 코드는 목록 요소를 올바르게 반복하여 각 요소를 "theSum"에 추가합니다.

범위를 사용하여 색인화

또는 색인화하는 경우 필요하면 range()를 사용할 수 있습니다.

for i in range(len(ar)):
    theSum = theSum + ar[i]

이 접근 방식은 "i"가 "ar"에 대해 유효한 인덱스 값만 취하도록 하여 IndexError를 방지합니다.

위 내용은 \'for i in ar\' 루프 내에서 \'ar[i]\'를 사용하여 목록의 요소에 액세스할 때 IndexError가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.