참고자료: https://wikidocs.net/20
# 조건문 if문
# ‘돈이 있으면 택시를 타고 가고, 돈이 없으면 걸어간다.’
money = True
if money:
print("택시를 타고 가라")
else:
print("걸어 가라")
# if문의 기본 구조
if 조건문:
수행할_문장1
수행할_문장2
...
else:
수행할_문장A
수행할_문장B
...
# 들여쓰기 주의!
조건문 다음에 콜론(:)을 잊지 말자!
if 조건문 뒤에는 반드시 콜론(:)이 붙는다. 어떤 특별한 의미가 있다기보다는 파이썬의 문법 구조이다.
앞으로 배울 while이나 for, def, class도 역시 문장의 끝에 콜론(:)이 항상 들어간다.
초보자들은 이 콜론(:)을 빠뜨리는 경우가 많으므로 특히 주의하자.
파이썬이 다른 언어보다 보기 쉽고 소스 코드가 간결한 이유는
바로 콜론(:)을 사용하여 들여쓰기를 하도록 만들었기 때문이다.
하지만 이는 숙련된 프로그래머들이 파이썬을 처음 접할 때 제일 혼란스러워하는 부분이기도 하다.
다른 언어에서는 if 문에 속한 문장들을 {}로 감싸지만, 파이썬에서는 들여쓰기로 해결한다는 점을 기억하자.
# 비교연산자
비교연산자 | 설명 |
x < y | x가 y보다 작다. |
x > y | x가 y보다 크다. |
x == y | x와 y가 같다. |
x != y | x와 y가 같지 않다. |
x >= y | x가 y보다 크거나 같다. |
x <= y | x가 y보다 작거나 같다. |
x = 3
y = 2
x > y
True
x < y
False
x == y
False
x != y
True
# 만약 3000원 이상의 돈을 가지고 있으면 택시를 타고 가고, 그렇지 않으면 걸어가라.
money = 2000
if money >= 3000:
print("택시를 타고 가라")
else:
print("걸어가라")
#걸어가라
# and, or, not
연산자 | 설명 |
x or y | x와 y 둘 중 하나만 참이어도 참이다. |
x and y | x와 y 모두 참이어야 참이다. |
not x | x가 거짓이면 참이다. |
# 돈이 3000원 이상 있거나 카드가 있다면 택시를 타고 가고, 그렇지 않으면 걸어가라.
money = 2000
card = True
if money >= 3000 or card:
print("택시를 타고 가라")
else:
print("걸어가라")
#택시를 타고 가라
# in, not in
in | not in |
x in 리스트 | x not in 리스트 |
x in 튜플 | x not in 튜플 |
x in 문자열 | x not in 문자열 |
# 리스트
1 in [1, 2, 3]
True
1 not in [1, 2, 3]
False
# 튜플
'a' in ('a', 'b', 'c')
True
'j' not in 'python'
True
# 만약 주머니에 돈이 있으면 택시를 타고 가고, 없으면 걸어가라.
pocket = ['paper', 'cellphone', 'money']
if 'money' in pocket:
print("택시를 타고 가라")
else:
print("걸어가라")
#택시를 타고 가라
# 조건문에서 아무 일도 하지 않게 설정하고 싶다면? pass
# 주머니에 돈이 있으면 가만히 있고, 주머니에 돈이 없으면 카드를 꺼내라.
pocket = ['paper', 'money', 'cellphone']
if 'money' in pocket:
pass
else:
print("카드를 꺼내라")
# 다양한 조건을 판단하는 elif
# 주머니에 돈이 있으면 택시를 타고 가고,
주머니에 돈은 없지만 카드가 있으면 택시를 타고 가고,
돈도 없고 카드도 없으면 걸어가라.
pocket = ['paper', 'cellphone']
card = True
if 'money' in pocket:
print("택시를 타고가라")
else:
if card:
print("택시를 타고가라")
else:
print("걸어가라")
#택시를 타고가라
# 위 코드를 더 간단히 쓰면,
pocket = ['paper', 'cellphone']
card = True
if 'money' in pocket:
print("택시를 타고가라")
elif card:
print("택시를 타고가라")
else:
print("걸어가라")
#택시를 타고가라
# 즉, elif는 이전 조건문이 거짓일 때 수행된다. if, elif, else를 모두 사용할 때 기본 구조는 다음과 같다.
if 조건문:
수행할_문장1
수행할_문장2
...
elif 조건문:
수행할_문장1
수행할_문장2
...
elif 조건문:
수행할_문장1
수행할_문장2
...
...
else:
수행할_문장1
수행할_문장2
...
# if 문을 한 줄로 작성하기
if 'money' in pocket:
pass
else:
print("카드를 꺼내라")
# 한줄로 변경하면
pocket = ['paper', 'money', 'cellphone']
if 'money' in pocket: pass
else: print("카드를 꺼내라")
# if 문 다음에 수행할 문장을 콜론(:) 뒤에 바로 적었다. else 문 역시 마찬가지이다.
# 조건부 표현식
# score가 60 이상일 경우 message에 문자열 "success", 아닐 경우에는 문자열 "failure"를 대입하는 코드이다.
if score >= 60:
message = "success"
else:
message = "failure"
# 조건부 표현식
message = "success" if score >= 60 else "failure"
# 변수 = 조건문이_참인_경우의_값 if 조건문 else 조건문이_거짓인_경우의_값