반응형
자! 이제 Python의 IF문을 정리해보자.
프로그래밍을 하다보면 IF문을 사용할일이 정말 많다.
조건문에 있어 참/거짓은 아주 중요한 개념이다.
먼저, 잊지 말아야할 것!
0이 아닌 수나 빈자료형이 아니라면 True를 반환한다.
0이나 빈자료형은 False를 반환한다.
# 참 거짓 판별 종류
# 참 : "values", [values], (values), {values}, 1
# 거짓 : "", [], (), {}, 0, None
a = 3
print(bool(a))
>>> True
b = ""
print(bool(b))
>>> False
IF문 실습
참이면 Good을 거짓이면 Bad를 출력하는 제어문이다.
이를 실행하면 Good이 출력되는 것을 볼 수 있다.
if True:
print("Good")
if False:
print("Bad")
>>> Good
관계연산자의 종류
>, >=, <, <=, ==, !=
x = 15
y = 10
# == 양 변이 같을 때 참.
print(x == y)
# != 양 변이 다를 때 참.
print(x != y)
# > 왼쪽이 클때 참.
print(x > y)
# >= 왼쪽이 크거나 같을 때 참.
print(x >= y)
# < 오른쪽이 클 때 참.
print(x < y)
# <= 오른쪽이 크거나 같을 때 참.
print(x <= y)
논리연산자
and, or, not을 간단하게 정리해보자.
and : 모든 조건이 참일 때 True를 반환한다.
or : 조건들 중 하나만 참이어도 True를 반환한다.
not : 참/거짓의 반대 결과를 반환한다.
# and, or, not
a = 75
b = 40
c = 10
print('and : ', a > b and b > c) # a > b > c
print('or : ', a > b or b > c)
print('not : ', not a > b)
print('not : ', not b > c)
print(not True)
print(not False)
>>> and : True
>>> or : True
>>> not : False
>>> not : False
>>> False
>>> True
조건문의 우선 순위
산술 > 관계 > 논리 순서로 적용한다.
print('e1 : ', 3 + 12 > 7 + 3)
print('e2 : ', 5 + 10 * 3 > 7 + 3 * 20)
print('e3 : ', 5 + 10 > 3 and 7 + 3 == 10)
print('e4 : ', 5 + 10 > 0 and not 7 + 3 == 10)
>>> e1 : True
>>> e2 : False
>>> e3 : True
>>> e4 : False
score1 = 90
score2 = 'A'
# 조건이 모두 참일 경우에 실행.
if score1 >= 90 and score2 == 'A':
print("Pass.")
else:
print("Fail.")
>>> Pass
id1 = "vip"
id2 = "admin"
grade = 'platinum'
if id1 == "vip" or id2 == "admin":
print("관리자 인증")
if id2 == "admin" and grade == "platinum":
print("최상위 관리자")
>>> 관리자 인증
>>> 최상위 관리자
다중 조건문
여러 조건이 필요할 경우 사용한다.
num = 90
if num >= 90:
print('Grade : A')
elif num >= 80:
print('Grade : B')
elif num >= 70:
print('Grade : C')
else:
print('과락')
>>> Grade : A
중첩 조건문
중첩 조건문이랑 조건문 안에 또다른 조건문으로 제어하는 경우 사용한다.
아래와 같이 학점이 'A'면서 성적에 따라 장학금 비율을 나눠야할 경우처럼 말이다.
# 중첩 조건문
grade = 'A'
total = 95
if grade == 'A':
if total >= 90:
print("장학금 100%")
elif total >= 80:
print("장학금 80%")
else:
print("장학금 70%")
else:
print("장학금 50%")
>>> 장학금 100%
Tip : in , not in
특정 값이 존재여부를 알아볼 때 in 과 not in을 사용한다.
여기서 유의할 점은 dictionary에서 값을 가져올 때 기본은 "Key"값이다.
Value값을 조회 하고 싶다면 values()를 사용하면 된다.
q = [10, 20, 30]
w = {70, 80, 90, 90}
e = {"name": 'Lee', "city": "Seoul", "grade": "A"}
r = (10, 12, 14)
print(15 in q)
print(90 in w)
print(12 not in r)
print("name" in e) # key 검색
print("seoul" in e.values()) # value 검색
>>> False
>>> True
>>> False
>>> True
>>> False
해당 글은 인프런의 [프로그래밍 시작하기 : 파이썬 입문-Inflearn Original ] 강의를 듣고 정리한 개인적인 학습 노트 입니다.
반응형