프로그래밍/Python

[Python]datetime

guitarhero 2017. 10. 25. 15:09
728x90

python에는 datetime이라는 클래스가 있는데 


import datetime 으로 불러와서 현재 시간이나 시간에 대한 것들을 표현할 수 있다. 


import datetime


now = datetime.datetime.now()

print(now)    #현재 시간 출력


그리고 문자열로 현재의 날짜를 출력하려면

date = now.strftime(%Y-%m-%d)

print(date)    #2017-10-25


문자를 datetime객체로 변환 하려면

datetime.datetime.strptime()함수를 이용해서 변경할 수 있다. 


그리고 날짜를 변경할때는 

ndate = date.replace(day=26)

위와같이 replace로 변경할 수 있고


d = datetime.date(2017, 10, 25)

t = datetime.time(12, 12, 12)

dt = datetime.datetime.combine(d,t)


이런 방법으로 사용할 수도 있다. 



날짜를 더할 때 datetime.timedelta를 이용하는데

now = datetime.datetime.now()

tommorow = now + datetime.timedelta(days=1)

와 같이 표현 할 수 있고 

timedelta에 들어갈 수 있는 인자값은 아래와 같다.

– 1주 : datetime.timedelta(weeks=1)

– 1일 : datetime.timedelta(days=1)

– 1시간 : datetime.timedelta(hours=1)

– 1분 : datetime.timedelta(minutes=1)

– 1초 : datetime.timedelta(seconds=1)

– 1밀리초 : datetime.timedelta(milliseconds=1)

– 1마이크로초 : datetime.timedelta(microseconds=1)


그리고 datetime 간의 차이를 나타내려면 

datetime - datetime을 하면 되는데 

이렇게 된 결과값은 datetime.timedelta값이 나온다. 

result = tommorow - now


로 얻어진 result 값에서 days와 sconds만 구할 수 있기 때문에 시간이나 분을 구하려고 하면 seconds를 계산해서 구해줘야 한다. 

result.days(o)

result.seconds(o)


[참조] https://godoftyping.wordpress.com/2015/04/19/python-%EB%82%A0%EC%A7%9C-%EC%8B%9C%EA%B0%84%EA%B4%80%EB%A0%A8-%EB%AA%A8%EB%93%88/

728x90