파이썬에서 다양한 라이브러리를 이용해보았다.
그 중 날짜와 시간에 관한 내용을 다루는 라이브러리들을 사용해보자.
< 라이브러리 >
- datetime
- pytz
- relativedelta
import는 4가지를 해 주었다.
from datetime import datetime
from datetime import timedelta
from pytz import timezone
from dateutil.relativedelta import relativedelta
※ datetime 라이브러리를 사용할 때 가끔 timezone 문제 발생하는 경우가 많아서 pytz를 같이 가져오는게 좋음
- 현재 날짜 시간 가져옴 (but, 서버가 시간 동기화가 안된 경우 현재 시간이 안나올 수 있음)
- now()
print(datetime.now())
결과
2023-11-08 15:23:38.763439
- 타임존 기준 현재 날짜 시간 가져옴.
- timezone()
print(datetime.now(timezone('UTC')))
print(datetime.now(timezone('Asia/Seoul')))
결과
2023-11-08 06:28:36.970174+00:00
2023-11-08 15:28:36.970174+09:00
- 변수로 설정 가능, type 확인
- type()
x = datetime.now(timezone('Asia/Seoul'))
print(type(x))
결과
<class 'datetime.datetime'>
- 연도, 월, 일, 시간, 분, 초, 밀리초 따로 출력 가능
- date(), time()
print(x.year, x.month, x.day, x.hour, x.minute, x.second, x.microsecond)
결과
2023 11 8 17 17 11 688699
print(x.date(), x.time())
결과
2023-11-08 15:29:08.658872
- weekday() : OO요일 (월요일 - 0, 화요일 - 1, 수요일 - 2, 목요일 - 3, 금요일 - 4, 토요일 - 5, 일요일 - 6)
print(x.weekday())
결과
2
- strftime() : 날짜 및 시간 객체를 문자열로 형식화하는 메서드, 특정 서식 지정자(Format Directive)를 사용
( %Y: OOOO년도 %y : OO년 )
print(x.strftime('%Y년%y년%m월%d일'))
결과
2023년23년11월08일
- help() : 라이브러리 함수의 정보를 얻을 수 있다.
help('datetime.datetime')
- 지정된 날짜를 출력하고 싶을 때
x = datetime.strptime('2023-11-07', '%Y-%m-%d')
print(x.month)
print(x.day)
결과
11
7
- 날짜 연산 : timedelta(), relativedelta() ( relativedelta이 더 넓은 범위까지 바꿀 수 있음)
- x 날짜에서 7일을 빼고 싶을 때(timedelta - 월, 년x)
print(x - timedelta(days=7))
결과
2023-10-31 00:00:00
- x 날짜에서 2개월을 빼고 싶을 때(relativedelta - 월, 년o)
print(x - relativedelta(months=2))
결과
2023-09-07 00:00:00
728x90
'Back-End > Python' 카테고리의 다른 글
[Python][파이썬] 고객 정보 관리 시스템 만들기 실습 3 - module, import (7) | 2023.11.08 |
---|---|
[Python][파이썬] 고객 정보 관리 시스템 만들기 실습 2 (3) | 2023.11.08 |
[Python][파이썬] 라이브러리, 모듈(module), import , __name__ (1) | 2023.11.08 |
[Python][파이썬] 파일 생성하기, pickle 모듈 (1) | 2023.11.07 |
[Python][파이썬] 파이썬 함수 (0) | 2023.11.07 |