[ 파이썬 기초 문법 - 3 ]에서는 

프로그래밍 흐름 제어에 관한 반복, 조건문에 대해서 소개하려고 합니다. 어렵지 않지만 개인적인 생각으로는 프로그래밍에 있어서 큰 부분을 차지하며 중요한 부분이라고 생각합니다. 




If문


조건식 내부의 결과가 참인지 거짓인지에 따라 if문 내부 구문 코드를 수행 여부를 결정 한다. 만약 조건식의 결과가 거짓이라면 해당 구문은 실행하지 않고 건너 뛴다. 특정 조건에 따라서 행동을 다르게 나타내고 싶다면 if문을 사용하면 된다!


if <조건식>:

    <구문>


예제 ) 

value = 5

if( value < 10 ):
print( value )

위의 예제는 결과가 참

즉, value가 10보다 작기 때문에 print( value )는 정상적으로 실행하게 된다.


자 그렇다면,

만약 1개가 아닌 2개이상의 조건문을 필요로 한다면 어떻게 하면 될까??

예를들어 value가 2보다 작은 조건과 4보다 큰 조건을 추가한다고 생각해보자 아래와 같이하면 될까?

value = 5

if( value < 2 ):
print( value )
if( value > 4 ):
print( value )


위의 방법이 틀렸다고 할수는 없다. 하지만 위와 같이 동일한 변수에 대해서 조건을 검사하는 경우에는 2개의 if문 모두 조건 검사를 하기 때문에 비 효율적이다. 다른 언어와 마찬가지로 Python에서는 elif와 else를 지원한다.  


value = 1

if( value < 2 ):
print( value )
elif( value > 4 ):
print( value )
else:
print ( value )

위의 예제에서는 첫번째 if문에서 True를 갖는다. 그렇기 때문에 컴파일러는 elif,의 조건과 else의 조건을 검사하지 않고 건너 뛴다.  위의 예제는 단 1번의 조건 검사만 하는 경우이다. 

-- 만약 if문이 거짓이라면 순차적으로 elif를 검사할 것이고, 그다음 else를 검사 할 것이다.


아무튼.... if문 여러개를 쓰지말고 상황에 따라 elif와 else를 쓰자!






True / false


조건식에서의 참 / 거짓 판단은 bool Type의 [ True, false ]를 반환한다.


value = 2

if ( value < 0 )에서 value < 0은 거짓이기 때문에 false를 반환한다.

즉 ( value < 0 ) == false와 같다.


또한 정수에서의 0, 문자열에서의 null 등 아무것도 없음을 의미하는 값은 거짓으로 판단이 되고,

그 외의 값은 모두 참이다.






while문


while <조건식 > :

      <구문>


- while문은 조건이 참일 경우에 계속적으로 반복하여 수행하도록 한다.

- while문을 빠져 나가기 위한 방법은 조건을 false가 되도록 바꾸거나 break를 통해 빠져나오면 된다.

- 무한루프 :

               while 1: 과 같이 조건을 항상 참이도록 만들어 while 루프 내부의 구문을 무한적으로 실행하도록 한다.

               빠져나가기 위한 방법은 오로지 break 뿐이다.


예제 )

#1

value = 30

while value > 0:
value -= 1
print( value )

#2

while 1 :
print(value)
value += 1
if value > 150:
break


#1은 30부터 0까지 출력

#2는 0부터 150까지 출력후 break를 통해 while문을 빠져나간다.





break / continue


1. break : 반복문을 빠져나가기 위한 키워드로 반복문 내에서 break를 만나면 반복문이 종료된다.

2. continue : 반복문 내에서 continue를 만나면 continue 이후에 있는 코드는 건너뛰고 반복문의 첫줄부터 다시 수행하도록 한다.




for문


for <원소> in <컨테이너>:

     구문



예시 )


lst = [ 1, 2, 3, 4]

for e in lst:
print ( e )


결과:

  1

  2

  3

  4


예시와 같이 for문을 통해서 lst라는 이름을 가진 리스트 변수의 각 원소인 [1, 2, 3, 4] 를 순회하여 출력한다. 이처럼 for문은 특정 컨테이너를 순회한다.



range( 시작값, 종료값, 증가값 )


for문을 이용하여 일정 범위 안에서 반복을 하고 싶을때는 range라는 함수를 사용하면 된다.

예를들어 1부터 10까지 반복하고싶다면


num = range(1,11)

for e in num:
print(e)

와 같이 범위값을 1,11로 값을 넣어주면 된다.



+ Recent posts