一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語(yǔ)言編程技術(shù)及教程分享平臺(tái)!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Python - Python中處理時(shí)間的幾種方法小結(jié)

Python中處理時(shí)間的幾種方法小結(jié)

2020-06-02 10:05aturbofly Python

這篇文章主要介紹了Python中處理時(shí)間的幾種方法,包括時(shí)間的獲取和時(shí)間之間的轉(zhuǎn)換等等,需要的朋友可以參考下

從一個(gè)字符串開始

在CODE上查看代碼片派生到我的代碼片

?
1
>>>time_str='2008-08-08 08:08:08'


 1.1.轉(zhuǎn)換為struct_time形式的時(shí)間  

在CODE上查看代碼片派生到我的代碼片

?
1
2
>>struct = ime.strptime(time_str,'%Y-%m-%d %H:%M:%S')
  time.struct_time(tm_year=2008, tm_mon=8, tm_mday=8, tm_hour=8, tm_min=8, tm_sec=8, tm_wday=4, tm_yday=221, tm_isdst=-1)

1.2.如果要得到對(duì)應(yīng)的時(shí)間戳(秒數(shù)):

在CODE上查看代碼片派生到我的代碼片

?
1
2
3
>>>sec=time.mktime(struct)
>>> sec
1218154088.0

 1.3.struct_time形式的時(shí)間返回開始的字符串:
在CODE上查看代碼片派生到我的代碼片

?
1
2
3
>>time_str=time.strftime("%Y-%m-%d %H:%M:%S",struct)
>>> time_str
'2008-08-08 08:08:08'

1.4.時(shí)間戳(秒數(shù))返回到struct_time形式的時(shí)間怎么辦?
在CODE上查看代碼片派生到我的代碼片

?
1
2
<pre name="code" class="python">>> time.gmtime(sec)
time.struct_time(tm_year=2008, tm_mon=8, tm_mday=8, tm_hour=0, tm_min=8, tm_sec=8, tm_wday=4, tm_yday=221, tm_isdst=0)

1.5.時(shí)間戳(秒數(shù))要返回到字符串應(yīng)該就知道怎么弄了吧?

當(dāng)然,有很直接方法,不過(guò)轉(zhuǎn)換回去的時(shí)間格式卻不一樣:
在CODE上查看代碼片派生到我的代碼片

?
1
2
>>> time.ctime(sec)
'Fri Aug 08 08:08:08 2008'

1.6.想獲取當(dāng)前的時(shí)間:

今天:
在CODE上查看代碼片派生到我的代碼片

?
1
2
>>> datetime.date.today()
    datetime.date(2015, 4, 3)

現(xiàn)在:
在CODE上查看代碼片派生到我的代碼片

?
1
2
>>> datetime.datetime.now()
    datetime.datetime(2015, 4, 3, 15, 19, 47, 361000)

現(xiàn)在的時(shí)間戳:

?
1
2
3
>>> time.time()
 
1428045689.396

現(xiàn)在的struct_time形式時(shí)間:

?
1
2
3
>>> time.localtime()
 
time.struct_time(tm_year=2015, tm_mon=4, tm_mday=3, tm_hour=15, tm_min=21, tm_sec=52, tm_wday=4, tm_yday=93, tm_isdst=0)

現(xiàn)在的UTC日期形式:

?
1
2
3
>>> time.ctime()
 
 'Fri Apr 03 15:23:45 2015'

1.7)datetime.date/datetime/time要轉(zhuǎn)換成struct_time怎么辦?

?
1
2
3
>>> datetime.datetime.now().timetuple()
 
  time.struct_time(tm_year=2015, tm_mon=4, tm_mday=3, tm_hour=15, tm_min=31, tm_sec=19, tm_wday=4, tm_yday=93, tm_isdst=-1)

這樣,結(jié)合1.2,要轉(zhuǎn)換成秒是不是很簡(jiǎn)單了?

1.8.datetime.date/datetime形式的的日期怎么轉(zhuǎn)換成‘2010-01-01 00:00:00'形式的字符串?

結(jié)合1.3和1.7是不是很簡(jiǎn)單?
1.9.字符串如何轉(zhuǎn)換成datetime.date/datetime/time呢?
在CODE上查看代碼片派生到我的代碼片

?
1
2
>>> datetime.datetime.strptime('2014-01-01',"%Y-%m-%d")
   datetime.datetime(2014, 1, 1, 0, 0)

2.0.然后要將struct_time轉(zhuǎn)換為datetime.date/datetime/time也就成功了

在什么情況下需要將struct_time轉(zhuǎn)換為datetime.date/datetime/time.看了2.1就明白了
2.1時(shí)間運(yùn)算——時(shí)間的加減

 昨天的時(shí)間怎么算?
在CODE上查看代碼片派生到我的代碼片

?
1
>> today=datetime.date.today()

在CODE上查看代碼片派生到我的代碼片

?
1
2
3
4
>>> delta=datetime.timedelta(days=1)
>>> yesterday=today-delta
>>> yesterday
 datetime.date(2015, 4, 2


 明天呢?七天(前)后呢?一分鐘前呢(),一秒呢?

看看這個(gè)構(gòu)造函數(shù):

class datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]]),能幫助你回答上面的問題吧?

注意阿,struct_time以及字符串都不可以和datetime.timedelta進(jìn)行運(yùn)算。所以知道從其他形式轉(zhuǎn)換成datetime.date/datetime/time.是很有用的吧。

當(dāng)然,struct_time也可以這樣進(jìn)行時(shí)間運(yùn)算。比如要計(jì)算昨天:

?
1
2
3
4
5
>>from time import time,localtime
 
>>day = 24*60*60
 
>>yesterday = localtime(time()-day)

2.2)時(shí)間比較:

這個(gè)就只說(shuō)明一句了:datetime.(date/datetime/time.)和struct_time形式的時(shí)間都可以進(jìn)行比較。(彼此之間不能比較)

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 97大香伊在人人线色 | 狠狠插入 | 免费尤物视频 | 麻豆视频入口 | 国产成人v爽在线免播放观看 | 日韩成本大片35分钟免费播放 | 精品破处 | 国产午夜精品久久久久小说 | 国产综合亚洲欧美日韩一区二区 | 精品久久久久香蕉网 | 大陆男男gayxxxxvideo | 国产精品边做边接电话在线观看 | 色亚| 色戒真做gif动图 | 精品无人区乱码1区2区3区免费 | 91九色porny国产美女一区 | 91成人爽a毛片一区二区 | 亚洲高清中文字幕精品不卡 | 欧美日韩第二页 | 182免费在线观看 | 西西人体大胆啪啪私拍色约约 | 日本孕妇大胆孕交 | 草逼网站视频 | 四虎最新紧急更新地址 | 亚洲 欧美 偷自乱 图片 | 欧美激情综合 | 高h细节肉爽文办公室 | 国产一区二区三区久久精品小说 | 高清欧美videossexo免费 | 99国内精品久久久久久久黑人 | 国产精品热久久毛片 | 九九免费高清在线观看视频 | 99在线观看视频免费精品9 | 美女脱小内内给男生摸j | 无人影院免费观看 | 日韩欧美综合在线二区三区 | 日日干天天爽 | 国产成人精品在线 | 91精品国产综合久 | 国产欧美一区二区精品性色 | 天天排行网 |