Python學習(五)時間日曆的處理

2021-08-25 23:04:01 字數 3399 閱讀 3597

time模組(提供時間處理和各種時間格式之間的轉換)

獲取當前的時間戳。

獲取時間元組

獲取格式化時間(可通過時間戳或者時間元組來進行轉化)

格式化日期字串

獲取當前的cpu時間

休眠操作

calendar模組

datetime模組  python處理時間和時間的標準庫

獲取時間戳(獲取的時間戳資料是從1970後開始計算並且以秒為單位,所以通過時間戳來獲取當前的時間要在後面加上1970)

下面是一段來獲取以年為單位的時間戳獲取具體時間的**:

import time  # 一定要記得加入時間包

result = time.time() # 獲取當前的時間戳,這個時間戳是在2023年後以秒為單位顯示的

result = result/(24*60*60*365) + 1970 # 通過除以每年內的秒數再加上1970來獲取當前的年份

print(result)

獲取時間元組(獲取的時間預設是當前時間)

下面同樣用一段**來展示時間元組的具體操作

import time

result = time.localtime() #獲取時間元組,前提必須加入時間包,引數預設時當前時間,也可以通過時間戳轉化為對應時間。

print(result)

利用時間戳和時間元組來獲取格式化時間

時間戳:先獲取當前時間戳再呼叫ctime()方法進行格式化

時間元組:先獲取時間元組再呼叫asctime(time_tuple)來進行格式化

import time

t = time.time()

result = time.ctime() # 利用時間戳來獲取格式化時間。

print(result)

time_tuple = time.localtime()

result = time.asctime(time_tuple) # 利用時間元組來獲取格式化時間。

print(result)

我們還可以利用時間元組來生成我們指定格式的日期

import time

time_tuple = time.localtime()

print(time.strftime("%y-%m-%d %h:%m:%s", time_tuple))

# 利用%y代表年 %m代表月 %d代表日,¥h、%m、%s分別代替時分秒。

# 將元組日期中的年月日分別賦值給%y,%m,%d

而反過來我們也可以將格式化時間轉化為時間元組和時間戳

import time

# 將格式化時間轉化為時間元組

pt = time.strptime("2018-08-17 10:35:34","%y-%m-%d %h:%m:%s")

print(pt)

#將元組轉化為時間戳。

t = time.mktime(pt)

print(t)

在執行程式時有時候我們需要測試執行所需要的時間,這個時候我們可以通過獲取執行前後cpu的當前時間,然後再計算這倆個時間的差來獲取這個程式執行的時間。

下面是乙個簡單計算編譯器列印從0到9999的數字所需要的時間的簡單例子

import time

start = time.process_time() # 之間的time.clock()已經被棄用了,改用time.perf_counter或者time.process來獲取時間差。

for it in range(0,10000) :

print(it)

end = time.process_time()

print(end - start)

在time這個包中提供了乙個方法sleep(x)可以用來進行休眠操作,x表示停止x秒。下面是乙個簡單的實時時間讀書器,每過一秒輸出一次(其實一次輸出之後休眠一秒)。

import time

while true :

result = time.strftime("%y-%m-%d %h:%m:%s", time.localtime())

print(result)

time.sleep(1) # 執行到這裡的時候休息1秒鐘。

print(calendar.month(2018,8))
通過這串**可以列印出2023年8月的日曆。

通過datetime包中的datetime類中的乙個now()方法

import datetime

t = datetime.datetime.now()

print(datetime.datetime.today()) # 獲取當天的日期。

可以呼叫datetime類中的例項方法來檢視具體的年月日時分秒

# 獲取當天日期具體的年月日時分秒

print(type(t))

print(t.day)

print(t.min)

print(t.hour)

print(t.second)

print(t.month)

print(t.year)

還可以通過datetime類中的例項方法timedelta(day=x)來獲取時間差

import datetime

t = datetime.datetime.now()

result = t + datetime.timedelta(days=15) # 製造15天的時間差。

print(t,result)

first = datetime.datetime(2018 , 8, 16,00,00)

second = datetime.datetime(2018 , 9, 3,00,00)

dealt = second - first

print(dealt,type(dealt))

print(dealt,dealt.total_seconds())

輸出結果:

2018-08-27 01:39:42.207420 2018-09-11 01:39:42.207420

18 days, 0:00:00 18 days, 0:00:00 1555200.0

Python時間日曆

seconds 為可選的時間戳,預設為當前時間 import time result time.localtime print result time.struct time tm year 2020,tm mon 4,tm mday 6,tm hour 17,tm min 17,tm sec 6,...

python常用資料型別 時間日曆

一 python程式能用很多方式處理日期和時間,轉換日期格式是乙個常見的功能。二 常用操作 time模組,calendar模組,datetime模組 1.time模組 什麼是時間戳?時間戳 從0時區1970年1月1日0時0分0秒,到所給定日期時間的秒數。浮點數 1 獲取當前時間戳 獲取方式 impo...

python常用資料型別操作 時間日曆

time模組 1 獲取當前時間戳。從0時區的1970年1月1日0時0分0秒,到所給定日期時間的秒數,為浮點數。import time print time.time 1523587843.3224387 2 獲取時間元祖。很多python時間函式將時間處理為9個數字的元組,如下圖 time.loca...