Django에서 datetime 처리 방법(strftime/strptime)
strftimenow() >
4
strftime()
함수는 날짜, 날짜, 시간과 시간을 포맷하는 함수로date,datetime,time 등 종류를 지원하며 이 시간을 포맷 문자를 통해 문자열로 표시할 것을 요구한다.import datatime
datatime.datatime.now()
혹은
from datatime import datatime
datatime.now()
내 출력 변환 형식
strftime('%Y-%m-%d %H:%I:%S')
2018-07-02 23:18:20 .
strptime
strptime () 함수는 문자열이 표시하는 날짜 시간에서 포맷 문자열의 요구에 따라 해당하는 날짜 시간으로 변환하는 것입니다.
d2 = datetime.strptime('2018-03-02 17:41:20', '%Y-%m-%d %H:%M:%S')
변환 대조 형식:
문자열로 변환
%y (00-99)
%Y (000-9999)
%m (01-12)
%d (0-31)
%H 24 (0-23)
%I 12 (01-12)
%M (00=59)
%S (00-59)
두 개의 버그가 발생했습니다:
1: 데이터베이스와 시간이 일치하지 않는 버그를 표시합니다:
일찍이 이러한 문제에 부딪힌 적이 있다. 데이터베이스에서 꺼낸 시간과 전단 디스플레이 시간이 일치하지 않는 문제.나중에 출력 시간 곳곳에서 변환된 정보를 더 많이 냈는데, 마지막에 코드를 쓴 동료가 이런 것을 사용했다는 것을 알게 되었다.
one[‘time’] = one[‘time’].strftime ('%Y-%m-%d%H:%I:%S')%I는 12시간제 변환 형식입니다.이렇게 형식을 변환할 때 오류를 보고하지 않지만 출력의 결과는 데이터베이스와 일치하지 않을 것이다. 데이터베이스는 24시간 단위로 기록된 시간이다.
:datetime.datetime(2018, 2, 2, 18, 25, 29, tzinfo=) is not JSON serializable
이런 오류 메시지가 나타나면...
datetime.datetime(2018, 2, 2, 18, 25, 29, tzinfo=) is not JSON serializable
이것은datetime 데이터를 json에 직접 넣는 데 나타나는 오류 정보입니다.제이슨에 직접 넣을 수는 없어요.
해결 방법은:strftime를 사용하여 서열화할 수 있다.
.strftime("%Y-%m-%d %H:%M:%S")
다음은 파이톤:time,strftime,strptime의 구체적인 설명을 보겠습니다.
가장 자주 쓰는 시간.time()는 초 단위의 부동점수를 반환합니다.그러나strftime 처리의 유형은time입니다.struct_time, 실제로는 하나의 tuple이다.strptime와localtime는 모두 이 유형을 되돌려줍니다.
>>> import time
>>> t = time.time()
>>> t
1202872416.4920001
>>> type(t)
'float'>
>>> t = time.localtime()
>>> t
(2008, 2, 13, 10, 56, 44, 2, 44, 0)
>>> type(t)
'time.struct_time'>
>>> time.strftime('%Y-%m-%d', t)
'2008-02-13'
>>> time.strptime('2008-02-14', '%Y-%m-%d')
(2008, 2, 14, 0, 0, 0, 3, 45, -1)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.