Python--時間模塊time模塊

原地址:https://finthon.com/python-time/python

Python時間模塊——time模塊

簡介

 

在數據處理當中,常常會碰處處理時間的問題。好比:在序列預測的過程當中,須要經過學習一段時間的數據,去預測將來一段時間的結果。這時候就要用到時間(time、datetimecalendar)模塊,今天介紹時間模塊中的time模塊。git

 

表示時間的方法

 

在Python中有三種表示時間的方式:github

  • 時間戳:是指某個時間與1970年1月1日00:00:00的差值,單位爲秒,是一個浮點型數值;
  • 格式化時間:格式化時間由字母和數字表示的時間,好比:’Mon Oct 29 16:04:27 2018’;
  • 元組:將時間的信息放到一個元組中。

其中格式化時間中每一個字符的含義以下:機器學習

 

符號 描述
%a 簡化星期名稱
%A 完整星期名稱
%b 簡化月份名稱
%B 完整月份名稱
%c 相應的日期和時間表示
%d 一個月中的第幾天(01 – 31)
%H 一天中的第幾個小時(24小時制,00 – 23)
%I 第幾個小時(12小時制,01 – 12)
%j 一年中的第幾天(001 – 366)
%m 月份(01 – 12)
%M 分鐘數(00 – 59)
%p 本地am或者pm的相應符
%S 秒(01 – 61)
%U 一年中的星期數。(00 – 53星期天是一個星期的開始。)第一個星期天以前的全部天數都放在第0周
%w 一個星期中的第幾天(0 – 6,0是星期天)
%W 和%U基本相同,不一樣的是%W以星期一爲一個星期的開始
%x 相應日期
%X 相應時間
%y 去掉世紀的年份(00 – 99)
%Y 完整的年份
%Z 時區的名字(若是不存在爲空字符)
%% ‘%’字符

 

在元組中會有9項參數,以下表所示:ide

 

關鍵字 描述
tm_year
tm_mon 月(1-12)
tm_mday 日(1-31)
tm_hour 時(0-23)
tm_min 分(0-59)
tm_sec 秒(0-61),閏年多兩秒
tm_wday 週一-週日(0-6)
tm_yday 一年中第幾天(1-366)
tm_isdst 是否夏令時(1:是;0:不是;-1:未知;默認 -1)

 

time模塊中經常使用的函數能夠總結成下圖,基本上就是三者如何轉換:函數

《Python時間模塊——time模塊》

接下來咱們會一一介紹。學習

 

time.time()

 

該函數返回當前時間的時間戳,也就是距離1970年1月1日00:00:00的差值。spa

代碼演示:線程

 

 

 

time.localtime()

 

該函數能將一個時間戳轉換成元組的形式,若是沒有指定時間戳,默認使用當前時間的時間戳。須要注意的是返回的時間是當地時間。code

代碼演示:

 

 

 

time.gmtime()

 

該函數和localtime()的功能同樣,只是它返回的時間是格林威治天文時間(UTC),也就是世界標準時間。中國時間爲UTC+8。

代碼演示:

 

 

 

time.mktime()

 

該函數將一個元組轉換成時間戳。

代碼演示:

 

 

 

time.sleep()

 

該函數能讓程序線程暫停休息,傳入幾秒,休息幾秒。

代碼演示:

 

 

結果爲:

 

 

 

time.asctime()

 

該函數將一個元組轉換成格式化時間。若是沒有傳入參數,默認傳入time.localtime()

代碼演示:

 

 

 

time.ctime()

 

該函數將一個時間戳轉換成格式化時間。若是沒有傳入參數,默認傳入time.time()

代碼演示:

 

 

 

time.strftime()

 

該函數按照格式化字符把一個元組轉換成格式化時間字符串。若是沒有傳入參數,默認傳入time.localtime()

代碼演示:

 

 

 

time.strptime()

 

該函數按照格式化字符把一個格式化時間字符串轉成元組。

 

 

須要注意的是,當傳入的時間中包括週數和天數(%U和%W),該函數才能使用。

 

總結

 

本文介紹了time模塊中經常使用的幾個函數,主要涉及到三種時間格式之間的轉換。time模塊在機器學習中,尤爲在序列數據中使用較多。

相關文章
相關標籤/搜索