[python] 파이썬에서 인덱스를 사용하여 뒤로 루프?

100에서 0으로 반복하려고합니다. Python에서 어떻게합니까?

for i in range (100,0) 작동하지 않습니다.



답변

보십시오 range(100,-1,-1), 사용에 증가되는 제 3 인수는 (문서화 된 여기 ).

( “범위”옵션, 시작, 중지, 단계는 여기 에 문서화되어 있습니다 )


답변

제 생각에는 이것이 가장 읽기 쉬운 것입니다.

for i in reversed(xrange(101)):
    print i,


답변

for i in range(100, -1, -1)

약간 더 길고 느린 해결책 :

for i in reversed(range(101))

for i in range(101)[::-1]


답변

일반적으로 파이썬에서는 음수 인덱스를 사용하여 뒤에서 시작할 수 있습니다.

numbers = [10, 20, 30, 40, 50]
for i in xrange(len(numbers)):
    print numbers[-i - 1]

결과:

50
40
30
20
10


답변

코드가 작동하지 않는 이유

당신은 코드 for i in range (100, 0)제외하고 는 괜찮습니다.

세 번째 매개 변수 ( step)는 기본적으로 +1입니다. 따라서 -1뒤로 단계 로 이동 하려면 range ()에 세 번째 매개 변수를 지정해야 합니다.

for i in range(100, -1, -1):
    print(i)

참고 : 여기에는 출력에 100 & 0이 포함됩니다.

여러 가지 방법이 있습니다.

더 좋은 방법

파이썬 방식의 경우 PEP 0322를 확인하십시오 .

이것은 100에서 0까지 인쇄하는 Python3 pythonic 예제입니다 (100 및 0 포함).

for i in reversed(range(101)):
    print(i)


답변

다른 해결책 :

z = 10
for x in range (z):
   y = z-x
   print y

결과:

10
9
8
7
6
5
4
3
2
1

팁 :이 방법을 사용하여 목록의 색인을 다시 계산하는 경우 목록 색인이 0에서 시작하므로 ‘y’값에서 -1을 원합니다.


답변

문제를 해결하는 간단한 대답은 다음과 같습니다.

for i in range(100):
    k = 100 - i
    print(k)