이번엔 for 문에 대해서 알아볼 차례입니다. 파이썬에서 for 문의 쓰임새는 다른 언어와 차이가 있습니다.
for
문은 우리가 전에 배웠던 리스트와 같은 시퀀스(sequence)를 이용해서 원하는 명령을 반복할 때 쓰입니다. 시퀀스에 대해서는 나중에 자세하게 알려드리기로 하고, 전에 배웠던 리스트를 다시 한번 볼까요?
>>> family = ['mother', 'father', 'me', 'brother']
저희 가족이 이랬었는데 기억나시나요?
for 문
다음은 for 문을 이용해서 저희 가족들의 이름과 문자열 길이를 출력하는 프로그램입니다.
>>> family = ['mother', 'father', 'me', 'brother']
답은 아래와 같이 나오게 되지요.
mother 6
father 6
me 2
brother 7
in family for x:라고 쓰면 안 되냐고요?
안 됩니다.
문법이 그런 거니까 그대로 써주시면 됩니다.
range()
이번엔 range()
라는 것을 배워보도록 하겠습니다. range는 범위라는 뜻인데 여기서는 어떤 정수를 인자로 주면 그 범위 안의 정수들을 만들어줍니다. 말은 좀 어렵지만 별 거 아니랍니다.
>>> list(range(2, 7)) # pytyon 3 >>> range(2, 7) # python 2
이렇게 쳐 보세요. 어떤 답이 나오나요?
[2, 3, 4, 5, 6]
예, 2 이상 7 미만인 숫자로 리스트를 만들어 주었군요. 위에서 설명한 말이 이해되시죠?
그런데, for
를 설명하다가 갑자기 웬 range()
가 나오는 걸까요? 그렇습니다. for
문에 range()
를 사용할 수 있습니다.
>>> a = [4, 5, 6, 7] >>> for i in a: ... print(i) ...
위의 리스트를 사용한 예제와 아래의 range()
를 사용한 예제는 출력이 같습니다.
>>> a = [4, 5, 6, 7] >>> for i in a: ... print(i) ...
답이 어떻게 나올까요?