조건문
파이썬에서 조건문을 작성할 때는 if ~ elif ~ else 문을 사용한다. elif는 다른 언어에서 else if 로 사용하는 부분이다.
파이썬에서 조건문을 작성할 때는 코드의 블록을 들여쓰기(4개의 공백문자)로 설정해야한다.
score = 95
if score >= 90:
print("A")
print("축하합니다.")
elif score >= 80:
print("B")
else: print("C")
다만 위의 else문 같이 조건문에서 실행될 소스코드가 한 줄인 경우, 줄 바꿈을 하지 않고도 간략하게 표현할 수 있다.
※ 조건부 표현식
조건부 표현식을 이용하면 if ~ else 문을 한 줄에 작성할 수 있다.
score = 90
result = "Success" if score >= 90 else "Fail"
print(result)
조건부 표현식은 리스트 자료형을 공부할 때 나왔던 리스트 컴프리헨션과 함께 자주 사용된다.
a = [1,2,3,4,5,5,5]
remove_set = {3,5}
result = [i for i in a if i not in remove_set]
print(result)
논리 연산자
파이썬은 다른 언어와 다르게 and, or, not 을 통해 더 직관적으로 논리연산자를 표현한다.
논리 연산자 | 설명 |
X and Y | X와 Y가 모두 참일 때 참 |
X or Y | X와 Y 중에 하나만 참이어도 참 |
not X | X가 거짓일 때 참 |
in 연산자와 not in 연산자
파이썬에서는 추가적으로 in 연산자와 not in 연산자를 제공한다. 이 연산자들은 여러 개의 데이터를 담는 자료형인 리스트, 튜플, 문자열, 사전 자료형 안에 어떠한 값이 존재하는지 확인하는 연산을 수행한다.
in 연산자와 not in 연산자 예시 | 설명 |
X in 리스트 | 리스트 안에 X가 들어가 있을 때 참 |
X not in 문자열 | 문자열 안에 X가 들어가 있지 않을 때 참 |
pass
파이썬에서는 조건문의 값이 참이라고 해도, 아무것도 처리하고 싶지 않을 때 pass 키워드를 사용할 수 있다.
예를 들어 코드를 작성하면서 디버깅하는 과정에서 일단 조건문의 형태만 만들어 놓고 내용은 비워놓고 싶을 때 사용한다.
score = 90
if score >= 90:
pass # 나중에 작성할 코드
else: pass # 나중에 작성할 코드
파이썬 조건문 내에서 부등식
다른 언어와 달리 파이썬은 조건문 안에서 수학의 부등식을 그대로 사용할 수 있다. 예를 들어 x > 0 and x < 20과 0 < x < 20은 같은 결과를 반환한다. 다만 다른 언어에서는 0 < x < 20 같은 표현을 쓰면 항상 참의 결과를 반환하는 오류가 생길 수 있다.
참고자료: 이것이 취업을 위한 코딩 테스트다 with 파이썬 - 나동빈 지음(한빛미디어)
'Python > 파이썬 문법' 카테고리의 다른 글
[파이썬 문법] 입출력 보충(2차원 배열, sys.stdin.readline) (0) | 2022.01.06 |
---|---|
[파이썬 문법] 함수 (0) | 2021.12.29 |
[파이썬 문법] 입출력 (0) | 2021.12.28 |
[파이썬 문법] 그 외 다양한 자료형(문자열, 튜플, 사전, 집합) (0) | 2021.12.26 |
[파이썬 문법] 리스트 자료형 (0) | 2021.12.25 |