我有一个我想存储日期的情况,但是我也希望它们成为时区?我是否必须使用datetime.datetime
进行此操作,或者我可以拥有一个timezone-ware的 datetime.date
对象?
no,您不能有一个时区感知datetime.date
对象。
日期不能时区意识到,因为只有一天中的时间在区域之间有所不同,可以根据需要拖动日期。
换句话说:3月1日是3月1日在任何时区。给定的地理位置可以在此日期到达不同的时间,但是取出时间组成部分,而您只有3个数字:一年,一个月和一天。
日期对象不接受时区,但是我们可以通过创建一个timezone意识到的dateTime对象,然后使用其日期函数来获取日期对象。
from datetime import datetime
from pytz import timezone
datetime_obj = datetime.now(timezone('US/Eastern'))
date_obj = datetime_obj.date()