Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.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 将字符串中的日期时间转换为ISO格式,然后再转换为UTC格式_Python_Python 3.x_Datetime_Utc - Fatal编程技术网

Python 将字符串中的日期时间转换为ISO格式,然后再转换为UTC格式

Python 将字符串中的日期时间转换为ISO格式,然后再转换为UTC格式,python,python-3.x,datetime,utc,Python,Python 3.x,Datetime,Utc,期待将此日期转换为“2020-07-23 23:00:00.000” 首先是ISO格式,然后是UTC格式 这是我试图将其转换为ISO格式的内容,希望将其转换为UTC def get_date_in_iso_utc(date_str): date_time_obj = datetime.datetime.strptime(date_str, '%Y-%m-%d %H:%M:%S.%f') return date_time_obj.isoformat() 转换为ISO格式:

期待将此日期转换为“2020-07-23 23:00:00.000”

首先是ISO格式,然后是UTC格式

这是我试图将其转换为ISO格式的内容,希望将其转换为UTC

def get_date_in_iso_utc(date_str):
    date_time_obj = datetime.datetime.strptime(date_str, '%Y-%m-%d %H:%M:%S.%f')    
    return date_time_obj.isoformat()

转换为ISO格式:

从ISO转换为UTC:转换为datetime和将datetime转换为UTC

(我没有将其标记为重复,因为没有一篇文章可以回答这两个问题。请注意,您可以轻松地用谷歌搜索答案)

使用该模块,该模块附带完整的时区+UTC列表。找出本地时区是什么,从中构造一个
timezone
对象,并将其操作并附加到
iso\u格式
datetime

源代码,使用亚洲/加尔各答当地时区,用于字符串
2020-7-23 10:11:12

import pytz, datetime

time_zone = pytz.timezone("Asia/Kolkata")
iso_format = datetime.datetime.strptime("2020-7-23 10:11:12", "%Y-%m-%d %H:%M:%S")
local_date_time = time_zone.localize(iso_format, is_dst=None)
utc_date_time = local_date_time.astimezone(pytz.utc)
要将其转换为UTC计时,您需要执行以下操作:

final_data = utc_date_time.strftime("%Y-%m-%d %H:%M:%S")
print(final_data)

# OUTPUT
# >>> 2020-07-23 04:41:12
添加

要查找指定的时区,您只能通过
pytz
执行此操作。只需使用下面的代码

>>> pytz.all_timezones
>>> ['Africa/Abidjan',
 'Africa/Accra',
 'Africa/Addis_Ababa',
 ...]

希望回答您的问题

为什么您会建议a)不需要回答问题,b)将来可能会被弃用Python3.9现在将有,因为更少的陷阱,例如您不需要
本地化
…谢谢@MrFuppes,注意到您的建议。谢谢你的投入。我的发现就是这个问题的答案。在这里,在这里,我们可以自由地提供意见,而这个人只会选择最好的选择。因为,我没有更新未来的东西,我发现这是我最好的解决方案。这就是我们学习的方式:)虽然我真的很喜欢你的多重引用答案,但我认为重要的是要注意,链接的问题(它们的答案)显示了多种方法,如果你开始使用Python中的日期和时间,这些方法可能会令人困惑。在这里,我想你所需要的就是
datetime
@MrFuppes好吧,那么我很高兴我们这里有各种各样的答案——一个简单的方法,就像你的答案一样,就像我的答案一样“谷歌一下”。我认为“先搜索,然后提问”是处理
datetime
:)的最佳方法。请澄清一下:您的输入字符串代表哪个时区?您想要的输出是什么,一个tz感知的datetime对象?另一个字符串(哪种格式?)?