맛동산

파이썬 제어문_for문 본문

파이썬/기초

파이썬 제어문_for문

오지고지리고알파고포켓몬고 2016. 10. 6. 18:45

for문 역시 반복문의 하나로 조건이 참(True)인 동안만 실행됨.

헌데 C와 JAVA에선 for(i=0;i<10;i++) { }처럼 변수의 증감에 따른 조건문으로 사용했다면 파이썬에서는 for i in test_list: 와 같이 항목의 값을 하나씩 꺼내오는 식으로 사용하는 것 같음.

 

항목의 값을 꺼내 쓴다는게 한번에 와닿지 않을 것 같아서 예를 들겠음

 

 

학생들의 성적인 list7 즉, [90, 25, 67, 45, 80]인 리스트가 존재하고 이들 중 70점을 기준으로 합격, 불합격 판정을 내리는 코드임.

 

for mark in list7: -> mark는 for문 안에 생성되는 내부 변수라고 생각해도 될 것 같음.

for문 외에 '감자' in fruit_list가 의미하는 것은 '감자'라는 값이 fruit_list에 있는지 여부를 확인하는 행위였지만 for mark in list7:가 의미하는 것은 mark라는 변수를 list7의 값 하나 하나에 대입한다는 것임.

 

이를 토대로 생각해보면 애초에 in이라는 함수(?)는 '감자'가 있는지를 한번에 판단하는 것이 아니고 fruit_list[0]..[끝]까지 하나 하나 비교하는 행위를 하고있다고 추측할 수 있음.

 

아무튼 첫 mark엔 90, 다음은 25, 67...순으로 하나씩 대입하여 다음 문장을 수행함.

 

 

이외에 for문은 리스트 내포라는게 가능하다고 함

예를들어 아래처럼 [1,2,3,4]를 사용하여 [3,6,9,12]의 리스트를 만든다고 했을때

 

a = [1,2,3,4]

result = []

for num in a:

result.append(num*3)

 

굳이 이런 과정을 거치지 않고 result = [num * 3 for num in a] 이렇게 한줄로 표현이 가능함. 중첩포문도 가능한데 간단하게 표현할 수 있지만 머리가 복잡해질 것 같아서 이 정도로 끝내겠음.

 

난 사실 for문보다 while을 자주씀..

'파이썬 > 기초' 카테고리의 다른 글

파이썬 함수_실습  (0) 2016.10.06
파이썬 함수_이론  (0) 2016.10.06
파이썬 제어문_while문  (0) 2016.10.06
파이썬 제어문_IF문  (0) 2016.10.06
파이썬 자료형_집합 자료형  (0) 2016.10.06
Comments