Python dt.replace(tzinfo=) 不改变 timezome

标签 python python-2.7 datetime

为什么在收到有效时区时不替换修改 tzinfo 对象 对象?

我正在尝试将本地时间添加到未指定时间戳的时间戳中 时区。

if raw_datetime.tzinfo is None:
    print(raw_datetime)
    print(raw_datetime.tzinfo)
    raw_datetime.replace(tzinfo=dateutil.tz.tzlocal())
    print(raw_datetime.tzinfo, dateutil.tz.tzutc())

根据文档,我应该能够更改 tzinfo 属性 具有有效的日期时间

https://docs.python.org/2/library/datetime.html#datetime.date.replace

但我显然做错了什么,因为 tzinfo 对象仍然

2000-04-25 12:57:00
None
None tzutc()

最佳答案

只是一个简单的疏忽,replace 不会修改调用对象,而是返回一个替换了值的新对象。

datetime.replace:

Return a date with the same value, except for those parameters given new values by whichever keyword arguments are specified. For example, if d == date(2002, 12, 31), then d.replace(day=26) == date(2002, 12, 26).

关于Python dt.replace(tzinfo=) 不改变 timezome,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29137408/

相关文章:

python - 如何在 pandas df 中设置新索引和删除默认索引

python - 在Python中向通讯组列表发送电子邮件

python - 如何用 Python(NumPy、SciPy 等)求解 AX = B 方程,其中 A、X、B 是矩阵,X 的所有元素必须是非负数

python - 如何比较同时包含字符串和整数的列? python Pandas

android - Python 2.7 urllib.urlretrieve 未知的 url 类型 https

python错误: TypeError: an integer is required

Python pymysql datetime.datetime元组到时间戳

python - 无法使用 python 发送具有多个附件和多个收件人的邮件 [to,cc,bcc]

php - DateTimeZone 类中的奇怪常量

python - 如何在分钟内转换(可能为负)Pandas TimeDelta( float )?