관계연산자 ( Relational Operators)
2개의 객체간의 특정한 종류의 관계를 시험하는 연산자 입니다.
관계연산자는 이제부터 시작하는 제어문(조건문 반복문 등) 의 핵심 입니다.
프로그램의 전체는 실행흐름 이고 실행흐름은 제어와 반복으로 이뤄 짐니다.
제어와 반복의 시작은 관계연산으로 이뤄지는 것이니 정말 중요 하겠죠
같음 | == | 두 피연산자가 같으면 True | 1 == 1 (True) |
같지 않음 | != | 두 피연산자가 다르면 True | 1 != 2 (True) |
보타 큼 | < | 연산자 오른쪽이 크면 True | 1 < 2 (True) |
보다 작음 | > | 연산자 왼쪽이 크면 True | 2 > 1 (True) |
보다 크거나 같음 | <= | 연산자 오른쪽이 크거나 같으면 True | 1 <= 1 (True) 1 <= 2 (True) |
보다 작거나 같음 | >= | 연산자 왼쪽이 크거나 같으면 True | 1 >= 1 (True) 2 >= 1 (True) |
조건문? (if)
조건문은 주어진 조건에 따라 프로그램의 흐름을 바꾸는 구문입니다.
간단한 예를 들면
# 돈이 1000원 이면 사과를 사라. 아니면 자라
if money == 1000원 :
Buy 사과
else
Sleep
이것이 조건문의 기초이고 조건문의 대부분 입니다.
조건이 충족(True) 일때 수행할 내용, 충족 하지 못 했을때(False) 수행할 내용
간단하죠?
프로그래밍이 어렵게 느껴지시겠지만 따지고보면 프로그래밍은 실행흐름을 제어 하는 것 이기때문에
if문만 잘 써도 90점은 먹고 들어갈 수 있습니다.
물론..if 문을 잘 쓰기 위해서, 그래고 효율을 위해서 많은 고민이 필요하겠죠
그렇지만 원하는 데로 돌아는 가게 만 들 수 있습니다.
# Code 1
# 조건문
if True:
print("여기는 항상 OK")
if False:
print("여기는 Never NO")
가장 기본인 조건문입니다. True 영역만 실행이 되었습니다.
여기서 영역은 들여쓰기로 나타 냅니다.
파이썬이 다른 언어와 구분되는 큰 장점(?) 인데 다른 언어는 보통 영역을 괄호등( {}, ) 으로 구분하여 사용하는데
파이썬은 이런 불필요(?)한 부분을 과감히 제거하여 들여쓰기를 통해 같은 영역임을 인지하여동작합니다.
# Code 2
# 조건문
if True:
print("영역 시작")
print("여기는 항상 1")
print("여기는 항상 2")
print("여기는 항상 3")
print("여기는 항상 4")
print("여기는 항상 5")
print("여기는 항상 6")
print("여기는 항상 7")
print("영역 끝")
print("여기는 다른영역")
if False:
print("여기는 Never NO")
영역을 들여쓰기로 나타내기 때문에 파이썬에서는 들여쓰기가 정말 중요 합니다.
잊지마세요. !!!
조건문에 객체가 들어갔을때
# Code 3
str_test = "사과"
str_empty = ""
list_test = [1,2,3]
list_empty = []
if str_test:
print("str_test True")
if str_empty:
print("str_empty True")
if list_test:
print("list_test True")
if list_empty:
print("list_empty True")
이런 특징을 알아 두시면 유용하게 사용 할 수있습니다.
문자열일때 출력하고 비어 있으면 출력하지 않고, 리스트에 데이터가 있으면 전부 더한다 라는 명령을 수행할 수도 있습니다.
# Code 4
# 조건문 관계연산자
int_test = 5
if int_test == 5:
print("int_test 는 5 입니다.")
else :
print("int_test 는 5 가 아니네요")
if int_test == 3:
print("int_test 는 3 입니다.")
else :
print("int_test 는 3 가 아니네요")
if 와 else 도 같이 사용 해 봤습니다.
if -- 조건이 True 일때 수행 (int_test == 5 : True)
else -- 조건이 False 일때 수행 (int_test == 3 : False)
# Code 5
# 조건문 elif
int_test = 3
if int_test == 1:
print("int_test 는 1 입니다.")
elif int_test == 2:
print("int_test 는 2 가 입니다")
elif int_test == 3:
print("int_test 는 3 가 입니다")
elif int_test == 4:
print("int_test 는 4 가 입니다")
elif int_test == 5:
print("int_test 는 5 가 입니다")
else :
print("int_test 숫자가 아닌가봐요")
조건 여러개를 한곳에 모아두는 것입니다.
if 나 elif 중 한군에 True 가 된다면 나머지는 True 이어도 제일 처음 조건만 수행 됩니다.
# Code 6
# 조건문 elif
int_test = 7
if int_test > 1:
print("int_test 는 1 입니다.")
elif int_test > 2:
print("int_test 는 2 가 입니다")
elif int_test > 3:
print("int_test 는 3 가 입니다")
elif int_test > 4:
print("int_test 는 4 가 입니다")
elif int_test > 5:
print("int_test 는 5 가 입니다")
else :
print("int_test 숫자가 아닌가봐요")
7은 1, 2, 3, 4, 5 보다 크기때문에 if 나 elif 의 모든조건이 True 입니다.
그러나 if elif 특성상 제일처음 True 조건이 충족된 int_test > 1 의 영역 코드만 수행이 되는 것을 볼 수있습니다.
만야 아래 모든 충족되는 모든 것을 출력하고 싶다면 else 를 제거 하고
elif 를 모두 if 로 변경 해 주시면 됩니다.
# Code 7
# 조건문 elif
int_test = 7
if int_test > 1:
print("int_test 는 1 입니다.")
if int_test > 2:
print("int_test 는 2 가 입니다")
if int_test > 3:
print("int_test 는 3 가 입니다")
if int_test > 4:
print("int_test 는 4 가 입니다")
if int_test > 5:
print("int_test 는 5 가 입니다")
조건문과 관계연산자 는 프로그래밍의 핵심이니 꼭 숙지 하시길 바랍니다.
'Python > Python 시작하기' 카테고리의 다른 글
14. 파이썬 제어문 - for in 반복문 (0) | 2019.12.19 |
---|---|
13. 파이썬 제어문 - While 반복문 (0) | 2019.12.18 |
11. 파이썬 자료형 - 집합 (set) (0) | 2019.12.17 |
10. 파이썬 자료형 - 딕셔너리 (dictionary : dict) 자료형 (0) | 2019.12.16 |
9. 파이썬 자료형 - 튜플(tuple) (0) | 2019.12.15 |