● 1. Boolean data type & if conditional
- Bool 만들기 - Comparison operators
== | 같다 |
!= | 다르다 |
< | 작다 |
> | 크다 |
<= | 작거나 같다 |
>= | 크거나 같다 |
- Bool끼리 연산하기 - Logical operators
not | 불을 반대로 전환 |
and | 피연산자 두 개 모두 참 = True / 그 외 = False |
or | 피연산자 중 하나만 참이라도 = True / 두 개 모두 거짓 = False |
- [예제 p.169] 짝수와 홀수 구분하기
풀이 1 - 끝 자리로 구분 (사람의 방법)
number = input("정수 입력> ")
last_character = number[-1] # 마지막 자리 숫자 indexing
last_number = int(last_character) # data type을 str에서 int로 변환
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 - in 연산자 활용
number = input("정수 입력> ")
last_character = number[-1]
if last_character in "02468":
print("짝수입니다")
if last_character in "13579":
print("홀수입니다")
풀이 3 - % 연산자 활용 (컴퓨터의 방법 = 더 빠르다!)
number = int(input("정수 입력> "))
if number % 2 == 0:
print("짝수입니다")
else:
print("홀수입니다")
● 2. if~else & elif syntax
- [예제 p.179] if conditiona의 효율적 사용
score = float(input("학점 입력> "))
if score == 4.5:
print("신")
elif 4.2 <= score:
print("교수님의 사랑")
elif 3.5 <= score:
print("현 체제의 수호자")
elif 2.8 <= score:
print("일반인")
elif 2.3 <= score:
print("일탈을 꿈꾸는 소시민")
elif 1.75 <= score:
print("오락문화의 선구자")
elif 1.0 <= score:
print("불가촉천민")
elif 0.5 <= score:
print("자벌레")
elif 0 < score:
print("플랑크톤")
else:
print("시대를 앞서가는 혁명의 씨앗")
★ 위에서 검사한 상위 값은 제외하고 하위 값만 검사해야, 가독성과 프로그램 효율이 훨씬 높아진다.
- False로 변환되는 값
- None
- 0 / 0.0
- 빈 컨테이너 (빈 문자열, 빈 바이트열, 빈 리스트, 빈 튜플, 빈 딕셔너리 등)
- [도전문제 p.188] 간단한 대화 프로그램
import datetime # module 기능을 활용해 시간 기능 가져오기 (p.412)
now = datetime.datetime.now()
dialogue = input("대화를 입력하세요 : ")
if "안녕" in dialogue:
print("안녕하세요")
elif "몇 시" in dialogue:
print(f'지금은 {now.hour}시입니다.')
else:
print(dialogue)
- [도전문제 p.189] 나누어 떨어지는 숫자
number = int(input("정수 입력> "))
if number % 2 == 0:
print(f'{number}은 2로 나누어 떨어지는 숫자입니다.')
else:
print(f'{number}은 2로 나누어 떨어지는 숫자가 아닙니다.')
if number % 3 == 0:
print(f'{number}은 3으로 나누어 떨어지는 숫자입니다.')
else:
print(f'{number}은 3으로 나누어 떨어지는 숫자가 아닙니다.')
if number % 4 == 0:
print(f'{number}은 4로 나누어 떨어지는 숫자입니다.')
else:
print(f'{number}은 4로 나누어 떨어지는 숫자가 아닙니다.')
if number % 5 == 0:
print(f'{number}은 5로 나누어 떨어지는 숫자입니다.')
else:
print(f'{number}은 5로 나누어 떨어지는 숫자가 아닙니다.')
'Programming' 카테고리의 다른 글
git (0) | 2024.01.14 |
---|---|
[혼공파] Iteration (1) | 2023.12.31 |
[혼공파] Data type (0) | 2023.12.14 |
[생활코딩] CSS (1) | 2023.11.27 |
[생활코딩] HTML & Internet (1) | 2023.10.28 |