2014-02-07 4 views
8

년 - 월 - 일 시간 : 분 : 초 형식의 문자열로 현재 로컬 시간을 가져 오려고합니다. 나는 로깅을 위해 사용할 것이다.파이썬 3.3의 시간 문자열 포맷

 
Traceback (most recent call last): 
File "", line 1, in 
ValueError: Invalid format specifier 

내가 잘못 뭐하는 거지 : 나는 오류가 발생하지만

import time 
'{0:%Y-%m-%d %H:%M:%S}'.format(time.localtime()) 

: 문서의 내 독서에 의해 나는이 작업을 수행 할 수 있습니다? 더 좋은 방법이 있습니까?

답변

15

time.localtime은 strftime 형식의 서식을 지원하지 않는 time.struct_time을 반환합니다.

strftime 서식을 지원하는 datetime.datetime 개체를 전달하십시오.

>>> import datetime 
>>> '{0:%Y-%m-%d %H:%M:%S}'.format(datetime.datetime.now()) 
'2014-02-07 11:52:21' 
+0

datetime.datetime 대신 시간 사용에 대한 단점이있다? – markmnl

+0

좋아, 여기에 차이가 있습니다 : http://stackoverflow.com/questions/7479777/difference-between-datetime-vs-time-modules, datetime 내 요구에 더 적합합니다, 감사합니다! – markmnl