본문 바로가기

웹개발

점프 투 파이썬 3장 - 제어문

3-1 if문

if문은 조건문이다.

if 조건문:
	수행 코드
else:
	수행 코드

if문의 기본 구조이다. 

if문의 조건을 만족하지 않으면 else 안으로 이동한다.

조건문 뒤에는 : 콜론을 붙여야 하고, 수행 코드는 꼭 들여쓰기를 해야 한다.

 

<비교연산자>

x < y     x가 y보다 작다.
x > y     x가 y보다 크다.
x == y    x와 y가 같다.
x != y    x와 y가 같지 않다.
x >= y    x가 y보다 크거나 같다.
x <= y    x가 y보다 작거나 같다.

<and, or, not>

x or y    x와 y 둘 중 하나만 참이어도 참이다.
x and y   x와 y 모두 참이어야 한다.
not x     x가 거짓이면 참이다.

조건 x, y에 대해 두 가지 이상의 조건을 가지고 조건문을 만들 때 필요하다.

 

<in, not in>

x in 리스트
x in 튜플
x in 문자열
x not in 리스트

리스트, 튜플, 문자열 안에 x라는 값이 들어 있는지에 대한 참, 거짓을 in 을 통해 알 수 있다.

not in은 안 들어있는지에 대한 조건문이다.

 

<elif>

if, else만으로는 다양한 조건을 만들기 어렵다.

예를 들어, x가 1일 때, 2일 때, 3일 때...를 다 따로 만들고 싶다면 elif를 사용하면 된다.

if 조건문:
	수행 코드
elif 조건문:
	수행 코드
elif 조건문:
	수행 코드
else:
	수행 코드

이런 식으로 작성할 수 있다.

elif는 개수 제한 없이 사용할 수 있으면, 모든 if, elif의 조건문을 만족하지 않아야 else 안으로 들어간다.

 

<조건부 표현식>

if score >= 60:
	s = 'success'
else:
	s = 'fail'
    
s = 'success' if score >= 60 else 'fail'

변수 = 조건문이_참인_경우의_값 if 조건문 else 조건문이_거짓인_경우의_값

조건부 표현식은 if, else 문을 한 줄로 표현할 수 있다.

 

 

3-2 while문

while문은  반복 수행을 할 때 사용한다.

while 조건문:
	수행코드1
	수행코드2

while문의 기본 구조이다.

조건문의 조건이 참인 동안 while문 안의 수행코드들이 반복해서 동작한다.

 

<while문 강제 탈출>

조건문의 조건을 만족하지 않더라도 그만 반복하고 while문을 빠져나가고 싶을 때

break문을 사용하면 된다.

while 1==1:
	print(1)
	break

이렇게 작성하면 1==1이라는 조건은 항상 참이지만,

break가 실행되는 순간 반복을 멈추고 while문 바깥으로 빠져 나간다.

 

<while문의 맨 처음으로 돌아가기>

while문 안의 수행 코드들을 수행하다가 중간에 처음부터 다시 수행 코드를 실행해야 할 때

continue문을 사용한다.

a = 0
while a < 10:
    a = a + 1
    if a % 2 == 0: continue
    print(a)

이렇게 하면, a가 짝수가 됐을 때는 continue가 실행되어 그 밑에 print(a)는 실행되지 않고

다시 a = a + 1로 돌아온다.

 

 

3-3 for문

for문은 while문과 비슷한 반복문이다.

for 변수 in 리스트(튜플이나 문자열도 가능):
    수행 코드1
    수행 코드2

for문의 기본 구조이다.

리스트 안에 담긴 값들을 하나씩 꺼내서 변수에 담고, 수행 코드가 실행된다.

 

<continue와 break>

while문과 같은 기능을 한다.

continue가 실행되면 반복문의 처음으로 돌아가고

break가 실행되면 반복문을 탈출한다.

 

<range 함수>

a = range(10)
b = range(1, 11)

range 함수는 range 객체를 만들어 준다.

range(10)은 0부터 10 미만의 숫자를 포함하고,

range(1, 11)은 1부터 11 미만의 숫자를 포함하는 객체를 만든다.

for i in range(1,11):
   print(i)

이런 코드를 실행하면 i 안에 1부터 10까지의 숫자가 들어가서

1

2

...

10

이런 출력 결과가 나온다.

 

<리스트 컴프리헨션 사용하기>

a = [1,2,3,4]
reslut = []
for num in a:
    result.append(num*3)
print(result)
[3,6,9,12]


result = [num * 3 for num in a]
print(result)
[3,6,9,12]

표현식 for 항목 in 반복_객체 if 조건문

이렇게 for문을 이용해 리스트를 만드는 과정을 한 줄로 만들 수 있다.

'웹개발' 카테고리의 다른 글

점프 투 파이썬 5장 - 파이썬 날개 달기  (0) 2023.10.19
점프 투 파이썬 4장 - 파이썬의 입출력  (0) 2023.10.19
점프 투 파이썬 2장 - 자료형  (0) 2023.10.17
MySQL-Sequelize  (0) 2023.10.15
Node.js  (0) 2023.10.11