파이썬은 len(),sum(),type()등등 기본적으로 제공해주는 함수가 있습니다.
사용자가 임의로 def 키워드를 통해 만들어 놓은 함수도 있습니다.
그럼 기본 제공이 아닌 누군가가 만들어놓은 파이썬의 기본 함수가 아닌
함수들을 모아 놓은 것을 라이브러리 라고 합니다.
라이브러리에 있는 함수들을 이용하기 위해서는 ' import ' 라는 키워드와 함께 사용합니다.
위 사진처럼 import 를 통해 random 라이브러리를 가져왔습니다.
사용법은 random. 을 이용하여 random 에 다양한 함수들을 이용할 수 있습니다.
위 사진처럼 int형을 무작위로 내놓는 randint 와 float형을 내놓는 uniform 등등을 이용 할 수 있습니다.
random 라이브러리를 조금만 더 알아보면
seed() 는 random하게 나오는 숫자들의 순서를 지정할 수 있게 된다.
seed() 안에 값이 같게되면 내가 10번 실행해서 얻은값과 누군가가 10번 실행한 값이 같게 된다.
choice() 는 안의 값을 랜덤하게 하나만 내놓게 된다.
여러개를 내놓고 싶다면
sample() 을 이용하여 해결 할 수 있다.
이러한 랜덤하게 나온값을 저장하고 싶다면
shuffle() 을 이용하여 랜덤하게 나온 값을 저장할 수 있다.
이번에는 날짜를 처리하는 라이브러리를 이용해봅시다.
datetime에 있는 date를 import 합니다.
이제 이 date를 이용하여 여러 날짜를 처리하는 방식을 알아봅시다.
date() 안에 날짜를 지정해주면 파이썬에서 날짜를 이용할 수 있습니다.
변수에 저장하여 year 속성을 이용하면 year에 해당하는 값이,
month 속성을 이용하면 month값이, day속성을 이용하면 day값이 나오게 됩니다.
마지막 weekday()는 요일을 나타내주는데 숫자로 나타나게 됩니다.
이러한 날짜값을 우리가 보기 편하게 출력을 하려면 isoformat()을 이용합니다.
이런식으로 이용하시면 되겠습니다.
오늘 날짜를 구하는 방법은 date.today()로 알 수 있습니다.
시각을 다루는 방법은 마찬가지로 from datetime import time 으로
import하여 date를 이용하여 하시면 됩니다.
위와같은식으로 이용할 수 있습니다.
일시를 다루는 방법은 datetime에서 datetime을 이용하시면 됩니다.
from datetime import datetime 을 import 해주시면
datetime(년도,월,일,시간,분,초)로 나타낼 수 있습니다.
시간과 관련되서 중요한 사항을 말씀드리면
서버에 저장할때는 UTC 시간으로 저장하게 됩니다.
이는 세계 표준 시로 우리나라는 9시간 차이나는 시간입니다.
UTC로 저장하는 이유는 각 나라마다 지역시간이 다 다르기때문에
하나의 기준을 두어 다른나라와 시간 오차가 생기지 않게 하기 위함 입니다.
UTC 시각은 import time 을 import 하고 time.gmtime()을 이용해 알 수 있습니다.
local(지역시간으로 우리는 한국) 시각은 time.localtime()으로 알 수 있다.
그러면 이제 문자열로 된 날짜를 파이썬이 시간으로 계산해주는 방법을 알아봅시다.
문자열을 바꾸기위해서는 parse 라는 기능이 필요합니다.
from dateutil.parser import parse 를 합시다.
위사진처럼 date_str = '2022-06-30' 값이 들어있습니다.
이 날짜에 요일을 알아볼려고 weekday()를 했는데 에러를 나타냅니다.
에러코드는 str은 weekday속성이 없다고 하네요.
이러면 시간으로 바꿔줄 필요가 있습니다.
parse(date_str)을 통해 시간으로 바꿔준뒤 실행하시면 정상적으로 나오는 것을 알 수 있습니다.
위처럼 년,월,일로는 오류가 나게 됩니다. 이를 해결하기 위해서는
strptime()을 이용해 지정해주시면 오류가 안나게 됩니다.
그러면 이제 문자열을 바꾸는 방법도 알아보았습니다.
그렇다면 특정일로부터 원하는 날짜를 계산하는 방법을 알아봅시다.
이는 relativedelta 라는 기능을 이용합니다.
from dateutil.relativedelta import relativedelta 를 import 해줍시다.
오늘 날짜로부터 26일뒤와 7주일 뒤를 알아보기 위해
today 라는 변수에 datetime.today()로 오늘 정보를 저장합니다.
이 변수에 더하기로 relativedelta(days = +26)을 하면 26일 뒤 날짜 정보가 출력됩니다.
weeks = +7을 하게되면 7주 뒤에 날짜정보를 알 수 있게 됩니다.
그럼 두 날짜를 비교하는 방법을 알아봅시다.
start_day = parse('2022-01-13')
end_day = date.today() 입니다.
이처럼 두 날짜(A,B)를 비교하는 방법은 relativedelta( A,B)로 알 수 있습니다.
'개발 > 파이썬' 카테고리의 다른 글
파이썬. Numpy - 기본개념, 벡터와 행렬 (0) | 2022.11.22 |
---|---|
파이썬. 메모리 (0) | 2022.11.22 |
파이썬 기초. 함수() (0) | 2022.11.21 |
파이썬 기초. 반복문 (while) , 중첩된 반복문 (0) | 2022.11.18 |
파이썬 기초. 반복문(for) range , break, continue (0) | 2022.11.18 |