欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python日期和時(shí)間戳的轉(zhuǎn)換的實(shí)現(xiàn)方式

 更新時(shí)間:2024年10月20日 16:01:32   作者:西京刀客  
Python中日期和時(shí)間的處理涉及到time和datetime模塊,time模塊可實(shí)現(xiàn)時(shí)間戳與格式化時(shí)間字符串的轉(zhuǎn)換,而datetime模塊則提供更加直接易用的接口,本文詳細(xì)給大家介紹了Python日期和時(shí)間戳的轉(zhuǎn)換的實(shí)現(xiàn)方式,需要的朋友可以參考下

Python 日期和時(shí)間戳的轉(zhuǎn)換

Python中處理時(shí)間的模塊

Python中處理時(shí)間的模塊有time、datetime和calendar。

在Python中表示時(shí)間的方式:

  • 時(shí)間戳:10位整數(shù)位和若干小數(shù)位,例如 1551153156.6358607
  • 元組(struct_time): 含有9個(gè)元素的元組,例如 (tm_year=2011, tm_mon=9, tm_mday=28, tm_hour=10, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=271, tm_isdst=-1)
  • 格式化字符串: 格式化的時(shí)間字符串, 例如 ‘2019-02-26 12:45:46’

time模塊,以元組(struct_time)為核心實(shí)現(xiàn)時(shí)間戳和格式化時(shí)間字符串的相互轉(zhuǎn)換。
datetime模塊,以datetime類實(shí)例對(duì)象為核心實(shí)現(xiàn)時(shí)間戳和格式化時(shí)間字符串的相互轉(zhuǎn)換。

Python的time模塊

time模塊是通過調(diào)用C庫實(shí)現(xiàn)的,所以在有些平臺(tái)上無法使用。大部分接口和C標(biāo)準(zhǔn)庫的time.h一致。

使用time模塊來進(jìn)行格式化時(shí)間字符串和時(shí)間戳的相互轉(zhuǎn)換。

將時(shí)間戳轉(zhuǎn)換為格式化字符串

使用time模塊獲取當(dāng)前時(shí)間的時(shí)間戳:

>>> import time
>>> time.time()
1551157481.034565

將時(shí)間戳轉(zhuǎn)換為元組(struct_time):

>>> time.localtime(time.time())
time.struct_time(tm_year=2019, tm_mon=2, tm_mday=26, tm_hour=13, tm_min=2, tm_sec=1, tm_wday=1, tm_yday=57, tm_isdst=0)

將元組(struct_time)轉(zhuǎn)換為格式化時(shí)間字符串:

>>> time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
'2019-02-26 13:04:41'

Python 的datetime模塊

和time模塊相比,datetime模塊提供更直接易用的接口,功能也更加強(qiáng)大。

datetime模塊提供了處理日期和時(shí)間的類,既有簡(jiǎn)單的方式,也有復(fù)雜的方式。它雖然支持日期和時(shí)間算法,但其實(shí)現(xiàn)是重點(diǎn)是輸出的格式化操作和更加有效的屬性提取功能。

datetime模塊中定義的類(這些類的對(duì)象都是不可變的):

datetime.date: 表示日期,常用的屬性有year、month和day

datetime.time: 表示時(shí)間,常用的屬性有hour、minute、second和microsecond

datetime.datetime: 表示日期時(shí)間

datetime.timedelta: 表示兩個(gè)date、time和datetime實(shí)例之間的時(shí)間間隔,最小單位可達(dá)微秒

datetime.tzinfo: 時(shí)區(qū)相關(guān)對(duì)象的抽象基類,由time和datetime類使用

datetime.timezone: Python3.2中新增的功能,實(shí)現(xiàn)tzinfo抽象基類的類,表示與UTC的固定偏移量

使用datetime模塊中的datetime類將時(shí)間戳轉(zhuǎn)換為格式化時(shí)間字符串

使用datetime類將時(shí)間戳轉(zhuǎn)換為datetime實(shí)例:

>>> import time
>>> from datetime import datetime
>>> dt = datetime.fromtimestamp(time.time())
>>> dt
datetime.datetime(2019, 2, 26, 15, 27, 28, 678923)

將datetime實(shí)例轉(zhuǎn)換為格式化字符串:

>>> dt.strftime('%Y-%m-%d %H:%M:%S')
'2019-02-26 15:27:28'

使用datetime模塊中的datetime類將格式化時(shí)間字符串轉(zhuǎn)換為時(shí)間戳

使用datetime類將格式化字符串’2019-02-26 15:27:28’轉(zhuǎn)換為datetime實(shí)例:

>>> st = '2019-02-26 15:27:28'
>>> dt = datetime.strptime(st, '%Y-%m-%d %H:%M:%S')
>>> dt
datetime.datetime(2019, 2, 26, 15, 27, 28)

將datetime實(shí)例轉(zhuǎn)轉(zhuǎn)為元組(struct_time):

>>> tp = dt.timetuple()
>>> tp
time.struct_time(tm_year=2019, tm_mon=2, tm_mday=26, tm_hour=15, tm_min=27, tm_sec=28, tm_wday=1, tm_yday=57, tm_isdst=-1)

將元組(struct_time)轉(zhuǎn)換為時(shí)間戳:

>>> time.mktime(tp)
1551166048.0

也可以直接使用datetime實(shí)例的timestamp()函數(shù)直接獲取時(shí)間戳:

>>> dt.timestamp()
1551166048.0

使用datetime類獲取當(dāng)前日期和時(shí)間

使用datetime類獲取當(dāng)前日期:

>>> datetime.now().date().strftime('%Y-%m-%d')
'2019-02-26'

使用datetime類獲取當(dāng)前時(shí)間:

>>> datetime.now().time().strftime('%H:%M:%S')
'15:48:43'

到此這篇關(guān)于Python日期和時(shí)間戳的轉(zhuǎn)換的實(shí)現(xiàn)方式的文章就介紹到這了,更多相關(guān)Python日期和時(shí)間戳轉(zhuǎn)換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論