如何从Python的DateTime 对象中删除时区信息
时区被定义为观察标准时间的地理区域或区域。它基本上是指一个地区或国家的当地时间。大多数时区与世界标准时区协调世界时 (UTC) 有偏差。
在本文中,我们将讨论如何从 DateTime 对象中删除时区信息。
使用的功能
- datetime.now(tz=None):返回当前本地日期和时间。
- datetime.replace():返回具有相同属性的日期时间,除了那些由指定的关键字参数赋予新值的属性。
要删除 timstamp,调用 replace()函数时必须将 tzinfo 设置为 None 。
首先,使用datetime.now()创建一个具有当前时间的 DateTime 对象。然后使用timezone.utc修改 DateTime 对象以包含时区信息。然后使用.replace()方法操作带有时区信息的 DateTime 对象,以使用tzinfo参数删除时区信息。
句法:
replace(tzinfo=None)
例子:
Python
from datetime import datetime, timezone
# Get the datetime object using datetime
# module
dt_obj_w_tz = datetime.now()
print(dt_obj_w_tz)
# Add timezone information to the datetime
# object
dt_obj_w_tz = dt_obj_w_tz.replace(tzinfo=timezone.utc)
print(dt_obj_w_tz)
# Remove the timezone information from the datetime
# object
dt_obj_wo_tz = dt_obj_w_tz.replace(tzinfo=None)
print(dt_obj_wo_tz)
Python
from datetime import datetime, timezone
# Get the datetime object with timezone
# information
dt_obj_w_tz = datetime.now(tz=timezone.utc)
print(dt_obj_w_tz)
# Remove the timezone information from the
# datetime object
dt_obj_wo_tz = dt_obj_w_tz.replace(tzinfo=None)
print(dt_obj_wo_tz)
输出:
2021-08-10 12:51:42.093388
2021-08-10 12:51:42.093388+00:00
2021-08-10 12:51:42.09338
但是,可以通过提供tz参数来创建带有时间戳的 datetime 对象。
例子:
Python
from datetime import datetime, timezone
# Get the datetime object with timezone
# information
dt_obj_w_tz = datetime.now(tz=timezone.utc)
print(dt_obj_w_tz)
# Remove the timezone information from the
# datetime object
dt_obj_wo_tz = dt_obj_w_tz.replace(tzinfo=None)
print(dt_obj_wo_tz)
输出:
2021-08-10 07:21:57.838856+00:00
2021-08-10 07:21:57.838856