a = 10
b = 2
for i in range(1, 5, 2):
a += i
print(a+b)
1) 10
2) 12
3) 14
4) 16
4) 16
for i in range(1, 5, 2)는 1부터 4까지 2씩 증가한다. 따라서 숫자는 1, 3, 총 4가 나온다.
할당연산자 a += i 는 a = a+i 를 나타내므로 a는 14.
print(a+b)의 값은 16이 출력된다.
for 변수 in 리스트(또는 튜플, 문자열):
수행할 문장1
수행할 문장2
...
리스트나 튜플, 문자열의 첫 번째 요소부터 마지막 요소까지 차례로 변수에 대입되어 수행할 문장들이 수행된다.
for문은 숫자 리스트를 자동으로 만들어주는 range 함수와 함께 사용하는 경우가 많다.
>>> a = range(10)
>>> a
range(0, 10)
위의 range(10)은 0부터 10미만의 숫자를 포함하는 range 객체를 생성한다.
시작 순서와 끝 순서서를 지정하려면 range(시작 숫자, 끝 숫자) 형태를 사용하는데, 이때 끝 숫자는 포함되지 않는다.
>>> a = range(1, 11)
>>> a
range(1, 11)
range는 증가폭을 지정해서 해당 값만큼 숫자를 증가시킬 수 있다.
다음은 0부터 9까지의 숫자 중 짝수만 출력하는 예시이다.
>>> for i in range(0, 10, 2): # 0부터 8까지 2씩 증가
... print('Hello, world!', i)
...
Hello, world! 0
Hello, world! 2
Hello, world! 4
Hello, world! 6
Hello, world! 8