본문 바로가기

Python

6. 조건문 - 불리언, if 조건문

Boolean (불리언) : 오직 True(참), False(거짓) 값만 가질 수 있다.

 

불리언 만들기 : 비교 연산자

파이썬의 여섯 개 비교 연산자

== : 같다

!= : 다르다

< : 작다

> : 크다

<= : 작거나 같다

>= : 크거나 같다

OO<x<oo : 범위 비교

 

비교 연산자는 숫자, 문자열에 적용할 수 있다.

>>> print(10==100)
False
>>> print(10!=100)
True
>>> print(10<100)
True
>>> print(10>100)
False
>>> print(10<=100)
True
>>> print(10>=100)
False

 

문자열도 가능. 한글은 가나다순으로 앞에 있는 것이 작은 값이다.

>>> print("서울"=="서울")
True
>>> print("서울"!="서울")
False
>>> print("서울"<"제주")
True
>>> print("서울">"제주")

 

불리언 연산하기 : 논리 연산자

불리언끼리는 논리 연산자를 사용할 수 있다.

not (아니다) : 불리언을 반대로 전환

and (그리고) : 피연산자가 두 개가 모두 참일 때 True를 출력, 그 외에는 모두 False를 출력

or (또는) : 피연산자 두 개 중에 하나만 참이라도 True를 출력하며, 두 개가 모두 거짓일 때만 False를 출력

 

단항 연산자 : 피연산자가 한 개. ex) -10, +10 

이항 연산자 : 피연산자가 두 개. ex) 10 + 10, 10 - 10, 10 * 10, 10 / 10

 

not 연산자

not 연산자는 단항 연산자. 참과 거짓을 반대로 바꿀 때 사용.

>>> print(True)
True
>>> print(not True)
False

 

x=10
under_20=x<20
print("under_20:",under_20)
print("not under_20:",not under_20)

=>

under_20: True
not under_20: False

 

and 연산자와 or 연산자

엑셀의 and와 or와 같음.

and 연산자 : 양쪽 값이 모두 참일 때만 True

or 연산자 : 둘 중 하나만 참이어도 True

 

if 조건문

if 조건문은 조건에 따라 코드를 실행하거나 실행하지 않게 만들고 싶을 때 사용하는 구문. 코드의 실행 흐름을 변경한다는 뜻.

조건 분기 : 조건을 기반으로 실행의 흐름을 변경하는 것

 

if 조건문의 기본적인 구조

if 불리언 값이 나오는 표현식 : 

oooo불리언 값이 참일 때 실행할 문장

oooo불리언 값이 참일 때 실행할 문장

※ if 조건문 뒤에는 반드시 콜론(:) 붙여야 함. oooo는 들여쓰기 4칸

 

조건문 사용 예시

#입력을 받습니다
number=input("정수 입력>")
number=int(number)

#양수 조건
if number>0:
print("양수입니다.")

#음수 조건
if number<0:
print("음수입니다.")

#0 조건
if number==0:
print("0 입니다.")

=>

정수 입력>34
양수입니다.

 

정수 입력>-42
음수입니다.

 

정수 입력>0
0 입니다.

 

날짜/시간 활용하기

#날짜/시간과 관련된 기능을 가져오기
import datetime

#현재 날짜/시간을 구하기
now=datetime.datetime.now()

#출력
print(now.year,"년")
print(now.month,"월")
print(now.day,"일")
print(now.hour,"시")
print(now.minute,"분")
print(now.second,"초")

=>

2022 년
3 월
17 일
23 시
51 분
48 초

 

=>

2022 년
3 월
17 일
23 시
52 분
0 초

 

모듈 기능을 활용해서 datetime이라는 기능을 가져옴.

datetime.datetime.now() 함수로 현재 시간을 구해서 now라는 변수에 대입

now.year, now.month 등을 사용해 날짜, 시간을 출력

 

format()함수를 활용하면 한눈에 볼 수 있게 출력 가능

#날짜/시간을 한 줄로 출력하기
#날짜와 시간과 관련된 기능 가져오기
import datetime

#현재 날짜/시간 구하기
now=datetime.datetime.now()

#출력
print("{}{}{}{}{}{}초".format(
    now.year,
    now.month,
    now.day,
    now.hour,
    now.minute,
    now.second
))

=>

2022년 3월 18일 0시 0분 35초

 

※ 파이썬은 원래 월을 그대로 출력하지만, 다른 대부분의 프로그래밍 언어들은 0~11 까지로 출력함.

 

#오전과 오후 구분하는 프로그램
#날짜/시간 관련된 기능 가져옥
import datetime

#현재 날짜/시간 구하기
now=datetime.datetime.now()

#오전 구분
if now.hour<12:
print("현재 시각은 {}시로 오전입니다!".format(now.hour))

#오후 구분
if now.hour>12:
print("현재 시간은 {}시로 오후입니다!".format(now.hour))

=>

현재 시각은 0시로 오전입니다!

 

#계절을 구분하는 프로그램
#날짜/시간 기능 가져오기
import datetime

#현재 날짜/시간 구하기
now=datetime.datetime.now()

#봄 구분
if 3<=now.month<=5:
print("이번 달은 {}월로 봄입니다.".format(now.month))

#여름 구분
if 6<=now.month<=8:
print("이번 달은 {}월로 여름입니다".format(now.month))

#가을 구분
if 9<=now.month<=11:
print("이번 달은 {}월로 가을입니다.".format(now.month))

#겨울 구분
if now.month==12 or 1<=now.month<=2:
print("이번 달은 {}월로 겨울입니다.".format(now.month))

=>

이번 달은 3월로 봄입니다.

 

컴퓨터의 조건

#끝자리로 짝수와 홀수 구분
#입력을 받습니다.
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("홀수입니다")

=>

정수입력> 53
홀수입니다

 

=>

정수입력> 74
짝수입니다

 

#in 문자열 연산자를 활용해서 짝수와 홀수 구분
#입력을 받습니다.
number=input("정수 입력> ")
last_character=number[-1]

#짝수 조건
if last_character in "02468":
print("짝수입니다.")

#홀수 조건
if last_character in "13579":
print("홀수입니다.")

=>

정수 입력> 95
홀수입니다.

 

=>

정수 입력> 20
짝수입니다.

 

#나머지 연산자를 활용해서 짝수와 홀수 구분
#입력을 받습니다.
number=input("정수 입력> ")
number=int(number)

#짝수 조건
if number % 2==0:
print("짝수입니다.")

#홀수 조건
if number % 2==1:
print("홀수입니다.")

=>

정수 입력> 87
홀수입니다.

 

=>

정수 입력> 24
짝수입니다.

'Python' 카테고리의 다른 글

8. 반복문 - 리스트와 반복문  (0) 2022.03.30
7. 조건문- if~else와 elif 구문  (0) 2022.03.26
5. 숫자와 문자열의 다양한 기능  (0) 2022.03.15
4. 변수와 입력  (0) 2022.03.13
3. 숫자  (0) 2022.03.12