亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用strptime將帶有偏移量的時間戳轉換為日期時間obj

使用strptime將帶有偏移量的時間戳轉換為日期時間obj

慕標琳琳 2019-06-24 09:31:16
使用strptime將帶有偏移量的時間戳轉換為日期時間obj我試圖使用strptime方法將格式為“2012-07-24T23:14:29-07:00”的時間戳轉換為python中的datetime對象。問題是時間偏移在末尾(-07:00)。如果沒有偏移量,我可以成功地完成time_str = "2012-07-24T23:14:29"time_obj=datetime.datetime.strptime(time_str,'%Y-%m-%dT%H:%M:%S')但是我試過了time_str = "2012-07-24T23:14:29-07:00"time_obj=datetime.datetime.strptime(time_str,'%Y-%m-%dT%H:%M:%S-%z').但是它給出了一個值錯誤,它說“z”是一個錯誤的指令。有什么好主意嗎?
查看完整描述

3 回答

?
元芳怎么了

TA貢獻1798條經驗 獲得超7個贊

在Python 3.7+中:

from datetime import datetime

time_str = "2012-07-24T23:14:29-07:00"dt_aware = datetime.fromisoformat(time_str)print(dt_aware.isoformat('T'))# -> 2012-07-24T23:14:29-07:00

在Python3.2+中:

from datetime import datetime

time_str = "2012-07-24T23:14:29-0700"dt_aware = datetime.strptime(time_str, '%Y-%m-%dT%H:%M:%S%z')print(dt_aware.isoformat('T'))
# -> 2012-07-24T23:14:29-07:00

注意:在Python3.7之前,這個變體不支持:-0700部分(這兩種格式都是由RFC 3339)??匆?/trans>DateTime:添加解析RFC 3339日期和時間的功能.

在早期的Python版本(如Python2.7)上,您可以手動解析UTC偏移量:

from datetime import datetime

time_str = "2012-07-24T23:14:29-0700"# split the utc offset partnaive_time_str, offset_str = time_str[:-5], time_str[-5:]
# parse the naive date/time partnaive_dt = datetime.strptime(naive_time_str, '%Y-%m-%dT%H:%M:%S')
# parse the utc offsetoffset = int(offset_str[-4:-2])*60 + int(offset_str[-2:])if offset_str[0] == "-":
   offset = -offset
dt = naive_dt.replace(tzinfo=FixedOffset(offset))print(dt.isoformat('T'))

哪里FixedOffset類在這里定義。.


查看完整回答
反對 回復 2019-06-24
  • 3 回答
  • 0 關注
  • 800 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號