Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用python从字典中提取datetime_Python_Datetime_Datetime Format_Python Datetime - Fatal编程技术网

用python从字典中提取datetime

用python从字典中提取datetime,python,datetime,datetime-format,python-datetime,Python,Datetime,Datetime Format,Python Datetime,我从API请求中收到一个包含多个key:value的字典,其中有一个包含datetime格式。简化的字典是: d = {'_date': datetime.datetime(2020, 8, 5, 8, 47, 25, tzinfo=tzoffset(None, -21600))} 结果是d={u date':'2020-08-05 08:47:25'}在一个变量中,供以后使用 导入datetime和tzoffset from dateutil.tz后,结果可以使用print打印(dateti

我从API请求中收到一个包含多个key:value的字典,其中有一个包含datetime格式。简化的字典是:

d = {'_date': datetime.datetime(2020, 8, 5, 8, 47, 25, tzinfo=tzoffset(None, -21600))}
结果是
d={u date':'2020-08-05 08:47:25'}
在一个变量中,供以后使用

导入
datetime
tzoffset from dateutil.tz
后,结果可以使用
print打印(datetime.datetime(2020,8,4,4,10,12,tzinfo=tzoffset(None,-21600)).strftime(“%Y-%m-%d%H:%m”)

我试图做的是存储在一个变量中,比如说
v=d[''u date']
,但它将完整的表达式存储为字符串,并且不计算表达式

哪种方法是获取dict值、计算它并存储在变量中的正确方法,我的意思是
print(v)
-->
2020-08-05 8:47
。测试如下:

Python 3.8.3 (default, Jul  2 2020, 16:21:59) 
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import datetime
>>> from dateutil.tz import tzoffset
>>> d = {'_date': datetime.datetime(2020, 8, 5, 8, 47, 25, tzinfo=tzoffset(None, -21600))}
>>> d
{'_date': datetime.datetime(2020, 8, 5, 8, 47, 25, tzinfo=tzoffset(None, -21600))}
>>> v = d['_date']
>>> v
datetime.datetime(2020, 8, 5, 8, 47, 25, tzinfo=tzoffset(None, -21600))
>>> print(datetime.datetime(2020, 8, 5, 8, 47, 25, tzinfo=tzoffset(None, -21600)))
2020-08-05 08:47:25-06:00
>>> 

提前感谢

您需要消除偏移,只需使用:

d = {'_date': datetime.datetime(2020, 8, 5, 8, 47, 25, tzinfo=tzoffset(None, -21600))}
print  d['_date'].replace(tzinfo=None)
>>>2020-08-05 08:47:25

试着放一些代码,这样错误就可以重现。你说你有上面定义的
d
,并且试过
v=d[''u date']
——但是如果你真的运行了那段代码,
v
包含一个日期时间。因此,不清楚为什么您认为它包含一个字符串,除非您提供了演示问题的工作代码。我编辑了问题并添加了代码运行它
v=d['''u date'].replace(tzinfo=None)。isoformat(“”)
?然后只需执行
d[''u date']=d[''u date'].replace(tzinfo=None)。isoformat(“”)
要修改现有的
d
或创建一个新的,例如作为
d_new={'''''u date':d[''u date'].替换(tzinfo=None).isoformat(''')}
。我试图将结果存储在一个变量中,以便以后使用。删除tzinfo这是结果
>>v=d[''u date']。替换(tzinfo=None)>>>v datetime.datetime(2020,8,5,8,47,25)
你是什么意思?你怎么印的?您是否将其存储在文件中?如果我在屏幕上显示“打印(d['''''u date'].replace(tzinfo=None)”,但无法用于继续,我想将值
2020-08-05 08:47:25
保存在变量中。所需结果是d={''u date':'2020-08-05 08:47:25'}@Dannis您正在打印的东西是一个datetime对象:您的解释器正在“按原样”显示对象……因此,如果您希望以可读格式查看对象,请将其打印为字符串。如果您的脚本“无法继续”,然后您需要发布完整的代码,让我重新创建问题,或者查看错误。非常感谢您在上述注释中的帮助,MrFuppes指出要添加isoformat
d['''u date']=d[''u date'].replace(tzinfo=None)。isoformat('')
我获得了继续运行脚本的字典