Python 无法将当前时间转换为以Z结尾的特定日期格式
我正在尝试将当前时间转换为特定的格式,但我做不到。这就是我试图制作的Python 无法将当前时间转换为以Z结尾的特定日期格式,python,python-3.x,date,datetime,Python,Python 3.x,Date,Datetime,我正在尝试将当前时间转换为特定的格式,但我做不到。这就是我试图制作的2021-05-02T18:00:00.000Z。但是,以下脚本生成的是2021-05-04T00:21:25.199218 import datetime date_ = datetime.datetime.now().isoformat() print(date_) 如何实现这种格式 Datetime天真地不知道时区。但是打印出来的时间包括时区信息“Z”。因此,您需要一个特定的时区:dt=datetime.datetim
2021-05-02T18:00:00.000Z
。但是,以下脚本生成的是2021-05-04T00:21:25.199218
import datetime
date_ = datetime.datetime.now().isoformat()
print(date_)
如何实现这种格式
dt=datetime.datetime.now(datetime.timezone.utc)
iso\u ts=dt.isoformat(timespec=“millides”)
iso_ts.replace(“+00:00”,“Z”)
。虽然替换在这里看起来很危险,但请记住“Z”始终表示+00:00偏移量。理论上-00:00也是可能的(不确定确切的规范),但python永远不会生成它。如果你有其他偏移量,那么它不可能是Z这将为您提供
datetime.datetime.now(datetime.timezone.utc).isoformat(timespec=“毫秒”)。替换(“+00:00”,“Z”)
好的,它似乎正在工作。如果要转换的日期是1980-01-22怎么办?我不知道你的意思。这应该适用于任何日期,只要你能用时区信息创建一个datetime
对象,我不确定你能用datetime做到这一点。尝试使用pytz。它包括祖鲁时区。请对此发表评论。不,你不需要pytz在这里。遗憾的是,我还不能发表评论。我想你确实需要皮茨。有更好的答案吗?您很快就会获得所需的声誉积分;-)有希望地。字符串替换。我也想到了。如果不是+00:00怎么办?像这样,2021-05-04T00:21:25.199218?