call-datetime-now-without-tzinfo (DTZ005)
派生自 flake8-datetimez 代码检查器。
作用
检查 datetime.datetime.now()
的用法,该用法没有指定时区。
为什么这不好?
Python datetime 对象可以是朴素的或时区感知的。虽然感知对象表示时间上的特定时刻,但朴素对象不包含足够的信息来明确地将自身相对于其他 datetime 对象定位。由于这可能导致错误,因此建议始终使用时区感知对象。
datetime.datetime.now()
或 datetime.datetime.now(tz=None)
返回一个朴素的 datetime 对象。相反,使用 datetime.datetime.now(tz=<timezone>)
创建一个时区感知对象。
示例
建议改为
或者,对于 Python 3.11 及更高版本