[Python]파이썬 기초문법5 - [모듈, 표준 라이브러리 모듈, datetime모듈]
이번 포스트는 [모듈, 표준 라이브러리 모듈, datetime모듈]에 관한 내용입니다.
1️⃣ 모듈
- 모듈기능을 이용하면 다른 파일에 선언된 함수를 불러와서 사용할 수 있습니다.
< calculator.c파일 >
def add(a, b):
return a + b
def subtract(a, b):
return a - b
def multiply(a, b):
return a * b
# 함수 생략 #
[방법1] import A
import calculator
print(calculator.add(7, 5))
print(calc.subtract(7, 5))
print(calc.multiply(7, 5))
[방법2] import A as a
import calculator as calc
print(calc.add(7, 5))
print(calc.subtract(7, 5))
print(calc.multiply(7, 5))
[방법3] from A import func(1),func(2),...
import calculator import add, subtract, multiply
print(add(7, 5))
print(subtract(7, 5))
print(multiply(7, 5))
[방법4] from A import *
import calculator import add, subtract, multiply
print(add(7, 5))
print(subtract(7, 5))
print(multiply(7, 5))
2️⃣ 표준 라이브러리(standard library)
(1) math
import math
print(math.log2(8))
print(math.sin(0))
print(math.pi)
3.0
0.0
3.141592653589793
(2) random
import random
print(random.random()) # 랜덤한 실수
print(random.random())
print(random.randint(1, 20)) # 범위내 랜덤한 정수
print(random.randint(1, 20))
print(random.uniform(0, 3)) # 범위내 랜덤한 실수
print(random.uniform(0, 3))
0.7571635752971773
0.13053468479649133
17
9
0.196316378523684
2.1315243538525124
(3) os
import os
print(os.getlogin()) # 사용자 아이디
print(os.getcwd()) # 현재파일 위치
kirim
C:\Users\kirim\PycharmProjects\test
3️⃣ datetime 모듈
(1) datetime
import datetime
print(datetime.datetime(2021, 3, 18))
print(datetime.datetime(2021, 3, 18, 22, 17, 22))
print(datetime.datetime.now())
print(type(datetime.datetime.now()))
2021-03-18 00:00:00
2021-03-18 22:17:22
2021-03-18 22:18:44.807408
<class 'datetime.datetime'>
(2) datetime 연산
import datetime
today = datetime.datetime.now()
my_birth = datetime.datetime(1993, 5, 25, 2, 17, 22)
print(today - my_birth)
print(type(today - my_birth))
10159 days, 20:09:05.362173
<class 'datetime.timedelta'>
(3) timedelta 이용
datetime.timedelta
로 시간 요소의 값을 정해주어 연산에 사용할 수 있습니다.
import datetime
today = datetime.datetime.now()
my_timedelta = datetime.timedelta(seconds=50, days=5, hours=3, minutes=10)
print(today)
print(today - my_timedelta)
print(today + my_timedelta)
print(type(today - my_timedelta))
2021-03-18 22:44:32.856270
2021-03-13 19:33:42.856270
2021-03-24 01:55:22.856270
<class 'datetime.datetime'>
(4) 날짜 각요소 출력
import datetime
today = datetime.datetime.now()
print(today)
print(today.year) # 연도
print(today.month) # 월
print(today.day) # 일
print(today.hour) # 시
print(today.minute) # 분
print(today.second) # 초
print(today.microsecond) # 마이크로초
2021-03-18 22:56:08.971355
2021
3
18
22
56
8
971355
(5) 날짜 포맷팅(strftime)
포맷 코드(%) | 설명 | 예시 |
---|---|---|
%a | 요일(짧게) | Mon |
%A | 요일(길게) | Monday |
%w | 요일(0 ~ 6) | 0(일요일) |
%d | 일(01 ~ 31) | 18 |
%b | 월(짧게) | Jan |
%B | 월(길게) | January |
%m | 월(숫자) | 01 |
%y | 연도(짧게) | 21 |
%Y | 연도(길게) | 2021 |
%H | 시간(00 ~ 23) | 15 |
%I | 시간(00 ~ 12) | 03 |
%p | AM/PM | AM |
%M | 분(00 ~ 59) | 13 |
%S | 초(00 ~ 59) | 33 |
%f | 마이크로초 (000000 ~ 999999) | 142232 |
%Z | 표준시간대 | |
%j | 1년 중 며칠째인지(001 ~ 366) | 167 |
%U | 1년 중 몇 주째인지(00 ~ 53, 일요일 기준) | 33 |
%W | 1년 중 몇 주째인지(00 ~ 53, 월요일 기준) | 33 |
import datetime
today = datetime.datetime.now()
print(today)
print(today.strftime("%a %A %w"))
print(today.strftime("%b %B %m"))
print(today.strftime("%y %Y"))
print(today.strftime("%p %I %H"))
print(today.strftime("%M %S %f"))
print(today.strftime("%j %U %W"))
2021-03-18 23:28:53.921898
Thu Thursday 4
Mar March 03
21 2021
PM 11 23
28 53 921898
077 11 11
< 파이썬[Python] 기초문법 포스트 목차 >
1. 파이썬 기초문법1 [자료형, 기본출력, 함수, 불린형, type함수]
2. 파이썬 기초문법2 [옵셔널 파라미터, 변수(글로벌, 로컬), PEP8, while, if]
3. 파이썬 기초문법3 [리스트(list)]
4. 파이썬 기초문법4 [for, dictionary(사전), 앨리어싱, 리스트와 문자열]
>> 파이썬 기초문법5 [모듈, 표준 라이브러리 모듈, datetime모듈]
6. 파이썬 기초문법6 [input, 파일 입출력함수, strip, split, 여러개 리턴값]