프로그램의 흐름을 제어하는 제어문에는 조건문과 반복문이 있다.
이번에는 조건문에 사용하면 좋은 표현들과 조건문을 구성할 때의 유의사항에 대해 알아본다.
숫자, 문자열의 bool 전환
숫자나 문자열을 bool() 함수를 사용하여 bool 자료형으로 전환했을 때,
False를 반환하는 bool(0)과 bool('')의 두 가지를 제외한 나머지는 모두 True를 반환한다.
즉, 숫자의 경우 0만 False를 반환하고, 문자열은 비어있는 경우에만 False를 반환한다.
공백 문자(' ')도 True를 반환한다.
부등호 연결
다른 언어와 달리 Python에서는 두 개의 부등호를 이어서 표현하는 것이 가능하다.
예를 들어, 아래 코드의 실행 결과는 True이다.
a = 10
print(0 < a < 20)
논리 연산자
Python에는 두 가지 논리 연산자 and와 or이 존재한다.
- and : 둘 다 True일 때만 True 반환
- or : 둘 중 하나라도 True이면 True 반환
연산자 우선순위
산술 연산자 → 비교 연산자 → 논리 연산자 순으로 연산이 이루어진다.
구체적인 연산 순서는 *, / → +, - → 비교 연산자 → and → or 이다.
A = 20
print(A % 2 == 1 or A > 0 and A - 20 == 0)
- 0 == 1 or A > 0 and 0 == 0
- False or True and True
- False or True
- True
따라서, 위 print() 함수의 출력값은 True이다.
입력값 활용
input() 함수와 입력값을 가지고 조건문을 구성할 수 있다.
st = input('입력: ')
if st:
print('입력 완료')
위 코드에서 if st의 형태로 'st 값이 존재한다면'에 해당하는 조건을 구성할 수 있다.
조건문 작성 시 유의사항
Python에서 조건문 작성 시 if 조건 뒤의 ' : ' 기호와 종속문장 앞의 indent에 유의해야 한다.
조건 뒤에는 반드시 ' : '을 붙여줘야 하고, ' : ' 이후의 종속문장은 줄 앞의 공백을 유지해야 한다.
Java와 C언어 모두 종속문장을 중괄호 안에 위치시킨다.
반면 Python은 종속문장을 ' : ' 뒤에 위치시키며, indent는 공백 4칸을 유지하는 것이 약속이다.
https://github.com/tldnjs1231/python-basics/blob/main/python-basics-03-if.py
GitHub - tldnjs1231/python-basics
Contribute to tldnjs1231/python-basics development by creating an account on GitHub.
github.com
'2022 데이터 사이언스 > Python Basics' 카테고리의 다른 글
06. 반복문(2): for문 예제 (0) | 2022.06.14 |
---|---|
05. 반복문(1): for문과 list (0) | 2022.06.06 |
04. 조건문(2): if문 확장 (0) | 2022.06.05 |
02. 입력 함수 input() (0) | 2022.06.03 |
01. 자료형 및 기본 함수 (0) | 2022.06.03 |