av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python 帶時區的日期格式化操作

瀏覽:24日期:2022-07-07 11:28:39

如下所示:

Wed, 23 Oct 2019 21:12:01 +0800

Wed, 23 Oct 2019 06:08:37 +0000 (GMT)

Fri, 11 Oct 2019 12:42:07 +0800 (CST)

Wed, 23 Oct 2019 06:08:37 +0000 (UTC)

幾種不同的日期格式化方式,不同的時區時間轉換成北京時間,也就是東八區的時間,注意的是后面的時區表示方式,

def getTimeStamp(self, date): result = re.search(r'[-+]d+', date) if result: time_area = result.group() symbol = time_area[0] offset = int(time_area[1]) + int(time_area[2]) if symbol == '+':format_str = ’%a, %d %b %Y %H:%M:%S ’+ time_areaif 'UTC' in date: format_str = ’%a, %d %b %Y %H:%M:%S ’+ time_area+ ’ (UTC)’if 'GMT' in date: format_str = ’%a, %d %b %Y %H:%M:%S ’ + time_area + ’ (GMT)’if 'CST' in date: format_str = ’%a, %d %b %Y %H:%M:%S ’ + time_area + ’ (CST)’utcdatetime = time.strptime(date, format_str)tempsTime = time.mktime(utcdatetime)tempsTime = datetime.datetime.fromtimestamp(tempsTime)if offset > 8: offset = offset -8tempsTime = tempsTime + datetime.timedelta(hours=offset)localtimestamp = tempsTime.strftime('%Y-%m-%d') else:format_str = ’%a, %d %b %Y %H:%M:%S ’ + time_areautcdatetime = time.strptime(date, format_str)tempsTime = time.mktime(utcdatetime)tempsTime = datetime.datetime.fromtimestamp(tempsTime)tempsTime = tempsTime + datetime.timedelta(hours=(offset + 8))localtimestamp = tempsTime.strftime('%Y-%m-%d') return localtimestamp

補充知識:Python處理帶timezone的datetime類型

在存儲時間類型到數據庫的時候,通常使用DateTime類型。使用DateTime類型就會遇到時區timezone的問題。為了能夠處理timezone, 推薦存數據庫的使用存入的是基于UTC的時間日期,在本地取用的時候在轉成本地時間。

Python定義了抽象類tzinfo, 這個class不能直接使用。3.x版本(至少3.4, 3.5)定義了timezone class。但是這個timezone還是不如第三方pytz類好用。

還有一個問題就是如何得到本機的timezone。在time class里面可以得到一個time.timezone, 是一個基于秒的offset值。注意這個time不是datetime.time, 就是time,用于os相關的時間信息。不是很好用,推薦tzlocal庫。

安裝pytz和tzlocal

使用pip安裝就可以了。

pip install pytz

pip install tzlocal

如何使用

得到當前時間,用于數據的存儲

from datetime import datetime

t = datetime.utcnow()

已知本地時間,需要轉成UTC時間用于存儲

import pytzfrom tzlocal import get_localzonetz = get_localzone() #獲得本地timezoneutc = pytz.utc #獲得UTC timezonedt = datetime(2016, 6, 12, 5, 0, 0)loc_dt = tz.localize(dt) #將DateTime數據貼上timezoneutc_dt = loc_dt.astimezone(utc) #轉換到新的timezone

已知UTC時間,轉本地

import pytzfrom tzlocal import get_localzoneutc = pytz.utctz = get_localzone()t = datetime(x,x,x,x,x,x)utc_dt = utc.localize(t)loc_dt = utc_dt.astimezone(tz)

以上這篇python 帶時區的日期格式化操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产一区精品 | 色婷婷综合久久久中字幕精品久久 | 在线视频 亚洲 | 国产乱码精品一区二区三区五月婷 | 欧美第一页 | 亚洲一区二区久久 | 中文字幕的av | 亚洲一区二区精品视频在线观看 | 欧美一区二区三区在线观看 | 天天操夜夜操 | 色资源在线视频 | 97超碰人人| 成年人视频在线免费观看 | 免费在线播放黄色 | 亚洲综合大片69999 | 久久久久国 | 99福利网| 国产一级在线观看 | 五月天激情电影 | 久久国产精品99久久久久 | 日韩黄 | 福利久久| 久久国产区 | 日本成人在线观看网站 | 天天综合永久入口 | 成人一区二区三区在线观看 | 免费视频二区 | 北条麻妃99精品青青久久 | 中文字幕 国产精品 | 91视视频在线观看入口直接观看 | 天堂综合| 日韩精品999| 亚洲一区在线日韩在线深爱 | 色.com| 亚洲欧美国产精品久久 | 国产成人精品在线播放 | 欧美一区二区在线播放 | 视频一区二区三区中文字幕 | 国产精品一区二区三区久久 | 免费视频成人国产精品网站 | 欧美二区在线 |