Python-datetime.now()返回不正确的时间
我想在数据库中存储操作的时间戳。问题是我从Python-datetime.now()返回不正确的时间,python,datetime,python-datetime,Python,Datetime,Python Datetime,我想在数据库中存储操作的时间戳。问题是我从datetime.datetime.now()获得的时间不正确(我想这是由于时区的原因)。我尝试使用python在终端中获取值,得到了正确的结果 import datetime datetime.datetime.now()//correct time 但是,如果我在问题执行期间打印结果,则输出不正确,结果提前两小时 为什么终端给了我正确的时间,而程序实例没有,我如何在程序中得到正确的时间 编辑: 来自终端的日期时间: 2018-08-30 17:4
datetime.datetime.now()
获得的时间不正确(我想这是由于时区的原因)。我尝试使用python在终端中获取值,得到了正确的结果
import datetime
datetime.datetime.now()//correct time
但是,如果我在问题执行期间打印结果,则输出不正确,结果提前两小时
为什么终端给了我正确的时间,而程序实例没有,我如何在程序中得到正确的时间
编辑:
来自终端的日期时间:
2018-08-30 17:41:04.413187
来自程序实例的日期时间:
2018-08-30 14:42:31.761310
编辑:
我在运行程序时注意到了这个警告
RuntimeWarning: DateTimeField Policy.last_update received a naive datetime (2018-08-30 15:16:23.689896) while time zone support is active.
RuntimeWarning)
尝试此操作,根据您所在的时区调整小时数:
import datetime
datetime.datetime.utcnow()+datetime.timedelta(hours=3)
在终端和脚本中,
datetime.datetime.now().tzinfo
的结果是什么?您是否安装了多个版本的python?在terminal中,我获得datetime。datetime对象没有属性“tz_info”,它在脚本中返回None,我也从terminal获得None:“2.7.10(默认,2017年10月6日,22:29:07)\n[GCC 4.2.1兼容的Apple LLVM 9.0.0(clang-900.0.31)],来自程序:2.7.10(默认,2017年10月6日,22:29:07)[GCC 4.2.1兼容苹果LLVM 9.0.0(clang-900.0.31)]