Boolean
Boolean은 불린 또는 불리언이라는 발음으로 부르며 짧게 Bool '불'이라고 많이 표기한다.
불은 오직 True & False 값을 가진다.
♧ 비교 연산자
연산자 | 설명 | 연산자 | 설명 |
== | 같다 | > | 크다 |
!= | 다르다 | <= | 작거나 같다 |
< | 작다 | >= | 크거나 같다 |
숫자는 당연히 적용되며, 문자열에도 적용할 수 있는데, 가나다라 순으로 정렬되기 때문에 앞쪽 순서일수록 작은 값을 갖게 된다.
♧ 불 연산하기: 논리 연산자
연산자 | 의미 | 설명 |
not | 아니다 | 불을 반대로 전환 |
and | 그리고 | 피연산자 두 개가 모두 참일 때 True, 그 외는 모두 False를 출력 |
or | 또는 | 피연산자 두 개 중에 하나만 참이라도 True를 출력, 두 개가 모두 거짓일 때만 False를 출력 |
if 조건문
조건에 따라 코드를 실행하거나, 실행하지 않게 만들고 싶을 때 사용하는 구문. 이는 코드의 실행 흐름을 변경한다는 뜻이다. 이렇게 조건을 기반으로 실행의 흐름을 변경하는 것을 조건 분기라고 부른다.
# 짝수와 홀수 구분하기 1
number = input('정수 입력> ')
#마지막 자리 숫자 추출
last_character = number[-1]
#숫자로 변환하기
last_number = int(last_character)
#짝수 확인
if last_number == 0 \
or last_number == 2 \
or last_number == 4 \
or last_number == 6 \
or last_number == 8:
print('짝수')
#홀수 확인
if last_number == 1 \
or last_number == 3 \
or last_number == 5 \
or last_number == 7 \
or last_number == 9:
print('홀수')
# 짝수와 홀수 구분하기 2
number = input('정수입력> ')
last_character = number[-1]
#짝수조건
if last_character in '02468':
print('짝수')
#홀수조건
if last_character in '13579':
print('홀수')
# 짝수와 홀수 구분하기 3
number = input('정수 입력> ')
number = int(number)
if number % 2 ==0:
print('짝수')
else:
print('홀수')
♧ 날짜 / 시간 활용하기
#날짜/시간과 관련된 기능을 가져온다.
import datetime
#현재 날짜/시간을 구한다.
now = datetime.datetime.now()
# 출력
print(now.year, '년')
print(now.month, '월')
print(now.day, '일')
print(now.hour, '시')
print(now.minute, '분')
print(now.second, '초')
# 한 줄로 출력
print('{}년 {}월 {}일 {}시 {}분 {}초'.format(
now.year,
now.month,
now.day,
now.hour,
now.minute,
now.second
))
# 오전/오후 구분
if now.hour < 12:
print('현재 시각은 {}시로 오전입니다!'.format(now.hour))
if now.hour >=12:
print('현재 시각은 {}시로 오후입니다!'.format(now.hour))
# 사계절 구분
if 3 <= now.month <= 5:
print('이번 달은 {}월로 봄입니다!'.format(now.month))
elif 6 <= now.month <= 8:
print('이번 달은 {]월로 여름입니다!'.format(now.month))
elif 9 <= now.month <= 11:
print('이번 달은 {}월로 가을입니다!'.format(now.month))
elif now.month ==12 or 1<= now.month <= 2:
print('이번 달은 {}월로 겨울입니다!'.format(now.month))
if 조건문의 매개변수에 불이 아닌 다른 값이 올 때는 자동으로 이를 불로 변환해서 처리한다.
<if 조건문 뒤에 보통 불이 오는 것이 사전 지식이지만, 이런 내용을 알아야 하는 코드는 최근 지양하고 있으나 현재도 많이 사용되므로 알고 있는 것이 좋다.>
False로 변환되는 값: None, 0, 0.0, 빈 컨테이너(빈 문자열, 빈 바이트열, 빈 리스트, 빈 튜플, 빈 딕셔너리 등)
True로 변환되는 값: False로 변환되는 값 이외 모두 해당
♧ pass 키워드
프로그래밍의 전체 골격을 잡아 놓고 내부에서 처리할 내용은 나중에 만들겠다는 의도로 사용.
♧ raise 키워드를 사용해 오류를 강제로 일으켜 미구현 상태를 표현
♧ 연습 문제
if 하위의 조건문(들여쓰기가 된 if)을 만족하는 것은 'and'라고 생각하면 해석하기 편하다.
가장 왼쪽의 경우 x가 4보다 크고 y가 2보다 크다면 x와 y의 곱을 출력해라 인데 x가 4보다 크지 않으므로 두 변수의 합이 출력되는 것이다.
가장 오른쪽의 경우 x가 4보다 크고 y가 2보다 커야(y>=2가 아님)하지만 해당되지 않기 때문에 아무 내용도 출력되지 않는다. 상위의 if조건문을 만족하지만 하위의 조건문을 만족하지 않으면 아무 것도 출력되지 않는다. 만약 else로 해당되지 않을 경우의 조건을 준다면 출력된다.
# 중첩 조건문에 논리 연산자를 적용해 하나의 if 조건문으로만들어보자
x=15
# Question)
if x > 10:
if x < 20:
#x가 10보다 크고 20보다 작다면?
print('조건에 맞습니다')
# Answer1
if 10<x<20:
print('조건에 맞습니다')
# Answer2
if x>10 and x<20:
print('조건에 맞습니다')
😁
출처:
혼자공부하는파이썬(윤인성) https://www.youtube.com/watch?v=ZiFsfy1Ys9A&list=PLBXuLgInP-5kr0PclHz1ubNZgESmliuB7&index=19
'Data Scientist' 카테고리의 다른 글
파이썬(for 반복문, 딕셔너리, 딕셔너리와 for반복문, range) (0) | 2020.03.18 |
---|---|
파이썬(리스트: 리스트 연산자, append, insert, extend, del, pop, remove, clear, in/not in) (0) | 2020.03.17 |
파이썬(format함수, 문자열 포맷코드, upper/lower, strip, isOO, find/rfind, in, split함수) (0) | 2020.03.15 |
파이썬(변수와 입력: 복합대입 연산자, input( ), int/float/str 함수) (0) | 2020.03.13 |
파이썬(숫자: 사칙연산, 정수나누기, 나머지, 제곱 연산자) (0) | 2020.03.12 |