혼공파 19 ~ 25강
1. Boolean 자료형
True # 참
False # 거짓
# 비교 연산자
## == / != / < / <= / > / >=
# 논리 연산자
## 단항 not
not True # False
not False # True
## 이항 and
True and True # True
True and False # False
False and True # False
False and False # False
## 이항 or
True or True # True
True or False # True
False or True # True
False or False # False
# 날짜/시간 구하는 방법
import datetime
import pytz
seoul = pytz.timezone("Asia/Seoul")
now = datetime.datetime.now(seoul)
print("{}년 {}월 {}일 {}시 {}분 {}초".format(
now.year,
now.month,
now.day,
now.hour,
now.minute,
now.second
))
2. if 조건문의 기본 형태
# if 조건문
## 조건이 True 일 때만 들여쓰기 안쪽의 문장을 실행
파이썬은 들여쓰기를 통해 복합문장(한 덩어리)을 표현한다.
IndentationError : 들여쓰기를 잘못한 경우
if 조건:
문장
문장
문장
if True:
print("True 입니다!")
if False:
print("False 입니다!")
# 양수 음수 0인지 판별하는 프로그램
raw_input = input("정수를 입력해주세요: ")
raw_input = int(raw_input)
if raw_input > 0:
print("양수 입니다.")
if raw_input < 0:
print("음수 입니다.")
if raw_input == 0:
print("0 입니다.")
# 오전 오후 구분하는 프로그램
from pytz import timezone
from datetime import datetime
today = datetime.now(timezone('Asia/Seoul'))
if today.hour < 12:
print("오전입니다!")
if today.hour >= 12:
print("오후입니다!")
3. 사람의 방식과 컴퓨터의 방식
# 입력
raw = input("정수를 입력해주세요: ")
l = raw[-1]
# 짝수 또는 홀수
## 짝수 : 02468
## 홀수 : 13579
if l == "0" or l == "2" or l == "4" or l == "6" or l == "8":
print("짝수입니다")
if l == "1" or l == "3" or l == "5" or l == "7" or l == "9":
print("홀수입니다")
if l in "02468":
print("짝수입니다")
if l in "13579":
print("홀수입니다")
# 문자열 연산은 숫자 연산보다 느리다!
raw = int(raw)
if raw % 2 == 0:
print("짝수입니다")
if raw % 2 == 1:
print("홀수입니다")
# 컴퓨터에서는 어떻게 생각하는 것이 빠를까를 고민하여 효율적인 코드를 작성하는 것이 중요하다
4. if ~ else / elif 구문
# 홀수 짝수 구분
raw = input("정수를 입력해주세요: ")
raw = int(raw)
if raw % 2 == 0:
print("짝수입니다")
if raw % 2 == 1:
print("홀수입니다")
# 짝수라면 홀수가 아니고, 홀수면 짝수가 아니다
if raw % 2 == 0:
print("짝수입니다")
else:
print("홀수입니다")
# 양수/ 음수/ 0/ 2가지 보다 많은 경우의 수 발생
number = int(input("정수 입력: "))
if number > 0:
print("양수 입니다")
elif number > 0:
print("양수 입니다")
else:
print("0 입니다")
# 봄/여름/가을/겨울
month = int(input("월 입력: "))
if 3 <= month <= 5:
print("봄 입니다")
elif 6 <= month <= 8:
print("여름 입니다")
elif 9 <= month <= 11:
print("가을 입니다")
else:
print("겨울 입니다")
5. Pass 키워드 / raise NotImplementedError
# None, 숫자 0, 빈 컨테이너, 빈 문자 등 -> False
# bool(0) >> False
# bool("") >> False
# bool("아무 문자열") >> True
# 사용자로부터 입력
# 입력을 그대로 출력
# 사용자가 아무것도 입력하지 않았다면: "프로그램을 다시 실행해주세요"
i = input("> 입력해주세요: ")
i = i.strip()
# i = input("> 입력해주세요: ").strip()
## 방법 1
if i:
#프로그램의 주요 기능
print("입력한 내용:",i)
else:
# 프로그램의 보완적 기능
print("프로그램을 다시 실행해주세요")
## 방법 2
if not i == "":
#프로그램의 주요 기능
print("입력한 내용:",i)
else:
# 프로그램의 보완적 기능
print("프로그램을 다시 실행해주세요")
## 방법 3
if i == "":
print("프로그램을 다시 실행해주세요")
exit()
print("입력한 내용:", i)
# Pass Keyword
# 파이썬은 조건문 안에 반드시 복합문장을 넣어줘야 한다.
# 그렇지 않으면 Error을 띄우기 때문에 조건문 골격만 잡아두고 넘어가기 위해서 Pass 키워드 사용
# raise NotImplementedError
# Pass 처럼 조건문 안에 복합문장을 대신하여 프로그램 에러를 띄우지는 않지만
# 프로그램을 실행하여 조건문안으로 들어오게 되면 강제로 에러를 띄운다 (아직 구현되지 않았다)
'Base > Python' 카테고리의 다른 글
6. for 반복문과 리스트, 항등원, 전개 연산자 (0) | 2023.02.11 |
---|---|
5. 수열/배열/리스트 (0) | 2023.02.09 |
3. format, split 함수 / f-문자열 / 파괴적 연산과 비파괴적 연산 / 온라인 저지 (0) | 2023.02.07 |
2. 변수/복합대입연산자/input()/파이썬 튜터 (0) | 2023.02.06 |
1. 자료형(문자열, 숫자) (1) | 2023.02.05 |
댓글