ตัวเลือก: isoformat()
Python datetime
ไม่รองรับคำต่อท้ายเขตเวลาทางทหารเช่นคำต่อท้าย 'Z' สำหรับ UTC การเปลี่ยนสตริงอย่างง่ายต่อไปนี้เป็นเคล็ดลับ:
In [1]: import datetime
In [2]: d = datetime.datetime(2014, 12, 10, 12, 0, 0)
In [3]: str(d).replace('+00:00', 'Z')
Out[3]: '2014-12-10 12:00:00Z'
str(d)
โดยพื้นฐานแล้วจะเหมือนกับ d.isoformat(sep=' ')
ดู: Datetime, Python Standard Library
ตัวเลือก: strftime()
หรือคุณสามารถใช้strftime
เพื่อให้ได้ผลเช่นเดียวกัน:
In [4]: d.strftime('%Y-%m-%d %H:%M:%SZ')
Out[4]: '2014-12-10 12:00:00Z'
หมายเหตุ: ตัวเลือกนี้ใช้ได้เฉพาะเมื่อคุณทราบว่าวันที่ที่ระบุเป็น UTC
ดู: datetime.strftime ()
เพิ่มเติม: เขตเวลาที่มนุษย์อ่านได้
นอกจากนี้คุณอาจสนใจที่จะแสดงข้อมูลเขตเวลาที่มนุษย์สามารถอ่านได้pytz
พร้อมกับstrftime
%Z
ธงเขตเวลา:
In [5]: import pytz
In [6]: d = datetime.datetime(2014, 12, 10, 12, 0, 0, tzinfo=pytz.utc)
In [7]: d
Out[7]: datetime.datetime(2014, 12, 10, 12, 0, tzinfo=<UTC>)
In [8]: d.strftime('%Y-%m-%d %H:%M:%S %Z')
Out[8]: '2014-12-10 12:00:00 UTC'