1. 程式人生 > >【Python】time模組詳解

【Python】time模組詳解

http://blog.csdn.net/kiki113/article/details/4033017

 python 的內嵌time模板翻譯及說明
  
一、簡介

  time模組提供各種操作時間的函式
  說明:一般有兩種表示時間的方式:
       第一種是時間戳的方式(相對於1970.1.1 00:00:00以秒計算的偏移量),時間戳是惟一的
       第二種以陣列的形式表示即(struct_time),共有九個元素,分別表示,同一個時間戳的struct_time會因為時區不同而不同
    year (four digits, e.g. 1998)
    month (1-12)
    day (1-31)
    hours (0-23)
    minutes (0-59)
    seconds (0-59)
    weekday (0-6, Monday is 0)
    Julian day (day in the year, 1-366)
    DST (Daylight Savings Time) flag (-1, 0 or 1) 是否是夏令時
    If the DST flag is 0, the time is given in the regular time zone;
    if it is 1, the time is given in the DST time zone;
    if it is -1, mktime() should guess based on the date and time.
    夏令時介紹:http://baike.baidu.com/view/100246.htm
    UTC介紹:http://wenda.tianya.cn/wenda/thread?tid=283921a9da7c5aef&clk=wttpcts
    
二、函式介紹
1.asctime()
  asctime([tuple]) -> string
  將一個struct_time(預設為當時時間),轉換成字串
        Convert a time tuple to a string, e.g. 'Sat Jun 06 16:26:11 1998'.
        When the time tuple is not present, current time as returned by localtime()
        is used.
        
2.clock()
  clock() -> floating point number
  該函式有兩個功能,
  在第一次呼叫的時候,返回的是程式執行的實際時間;
  以第二次之後的呼叫,返回的是自第一次呼叫後,到這次呼叫的時間間隔
  
  示例:
 

  1. import time  
  2. if __name__ == '__main__':  
  3.     time.sleep(1)  
  4.     print"clock1:%s" % time.clock()  
  5.     time.sleep(1)  
  6.     print"clock2:%s" % time.clock()  
  7.     time.sleep(1)  
  8.     print"clock3:%s" % time.clock()  

  輸出:
  clock1:3.35238137808e-006
  clock2:1.00004944763
  clock3:2.00012040636
  其中第一個clock輸出的是程式執行時間
  第二、三個clock輸出的都是與第一個clock的時間間隔
  
3.sleep(...)
  sleep(seconds)
  執行緒推遲指定的時間執行,經過測試,單位為秒,但是在幫助文件中有以下這樣一句話,這關是看不懂
  “The argument may be a floating point number for subsecond precision.”

4.ctime(...)
  ctime(seconds) -> string
  將一個時間戳(預設為當前時間)轉換成一個時間字串
  例如:
  time.ctime()
  輸出為:'Sat Mar 28 22:24:24 2009'
        
5.gmtime(...)
  gmtime([seconds]) -> (tm_year, tm_mon, tm_day, tm_hour, tm_min,tm_sec, tm_wday, tm_yday, tm_isdst)
  將一個時間戳轉換成一個UTC時區(0時區)的struct_time,如果seconds引數未輸入,則以當前時間為轉換標準
  
    
6.localtime(...)
  localtime([seconds]) -> (tm_year,tm_mon,tm_day,tm_hour,tm_min,tm_sec,tm_wday,tm_yday,tm_isdst)
  將一個時間戳轉換成一個當前時區的struct_time,如果seconds引數未輸入,則以當前時間為轉換標準
  
        
7.mktime(...)
  mktime(tuple) -> floating point number
  將一個以struct_time轉換為時間戳
        
8.strftime(...)
  strftime(format[, tuple]) -> string
  將指定的struct_time(預設為當前時間),根據指定的格式化字串輸出
  python中時間日期格式化符號:
  %y 兩位數的年份表示(00-99)
  %Y 四位數的年份表示(000-9999)
  %m 月份(01-12)
  %d 月內中的一天(0-31)
  %H 24小時制小時數(0-23)
  %I 12小時制小時數(01-12) 
  %M 分鐘數(00=59)
  %S 秒(00-59)
  
  %a 本地簡化星期名稱
  %A 本地完整星期名稱
  %b 本地簡化的月份名稱
  %B 本地完整的月份名稱
  %c 本地相應的日期表示和時間表示
  %j 年內的一天(001-366)
  %p 本地A.M.或P.M.的等價符
  %U 一年中的星期數(00-53)星期天為星期的開始
  %w 星期(0-6),星期天為星期的開始
  %W 一年中的星期數(00-53)星期一為星期的開始
  %x 本地相應的日期表示
  %X 本地相應的時間表示
  %Z 當前時區的名稱
  %% %號本身 
    
9.strptime(...)
  strptime(string, format) -> struct_time
  將時間字串根據指定的格式化符轉換成陣列形式的時間
  例如:
  2009-03-20 11:45:39  對應的格式化字串為:%Y-%m-%d %H:%M:%S
  Sat Mar 28 22:24:24 2009 對應的格式化字串為:%a %b %d %H:%M:%S %Y
    
10.time(...)
   time() -> floating point number
   返回當前時間的時間戳

三、疑點
1.夏令時
  在struct_time中,夏令時好像沒有用,例如
  a = (2009, 6, 28, 23, 8, 34, 5, 87, 1)
  b = (2009, 6, 28, 23, 8, 34, 5, 87, 0)
  a和b分別表示的是夏令時和標準時間,它們之間轉換為時間戳應該相關3600,但是轉換後輸出都為646585714.0
  
四、小應用
1.python獲取當前時間
   time.time() 獲取當前時間戳
   time.localtime() 當前時間的struct_time形式
   time.ctime() 當前時間的字串形式
   
2.python格式化字串  
  格式化成2009-03-20 11:45:39形式
  time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) 
  
  格式化成Sat Mar 28 22:24:24 2009形式
  time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()) 
  
3.將格式字串轉換為時間戳
  a = "Sat Mar 28 22:24:24 2009"
  b = time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))

相關推薦

Pythontime模組

http://blog.csdn.net/kiki113/article/details/4033017  python 的內嵌time模板翻譯及說明    一、簡介   time模組提供各種操作時間的函式   說明:一般有兩種表示時間的方式:        第一種是

Python安裝MySQLdb

由於最近要使用Python操作MySQL資料庫,所以要安裝MySQLdb包。 1.首先嚐試在cmd下面使用語句conda install MySQLdb安裝,發現找不到,使用pip install MySQLdb也會出錯。 2.後來百度知道實際上要安裝的是mysql-pyhton。然後使

python time模塊和datetime模塊

-a cond .com ima 封裝 基本 sta times %d 一、time模塊 time模塊中時間表現的格式主要有三種:   a、timestamp時間戳,時間戳表示的是從1970年1月1日00:00:00開始按秒計算的偏移量   b、struct_time時間

人人都是Pythoner超全python的collections模組

前言: python中內建容器包括list、dict、set、tuple,而python中的collections模組則另引入了五種資料結構,更好地滿足編碼需求。 下文驗證資料型別方法用到的程式碼放在了我的github上,歡迎下載: AdvancingMsCat的github co

python~time模組

time模組  在開始之前,首先要說明這幾點:     在Python中,通常有這幾種方式來表示時間:1)時間戳 2)格式化的時間字串 3)元組(struct_time)共九個元素。由於Python的time模組實現主要呼叫C庫,所以各個

python標準庫常用模組(一)-----------------------------time模組及相關演示程式碼

要想了解time模組,我們需要首先了解一下時間的三種表現形式: 1.時間戳:當前距離1970年的秒數 2.格式化的字串:即2018年9月11日的這種表現形式 3.struct_time:元組時間,以元組的形式顯示時間,一共有九個元素 下面來介紹一下它具體的方法及示例程

Python time 模組(時間獲取和轉換)

time 模組 -- 時間獲取和轉換time 模組提供各種時間相關的功能在 Python 中,與時間處理有關的模組包括:time,datetime 以及 calendar必要說明:   雖然這個模組總是可用,但並非所有的功能都適用於各個平臺。 該模組中定義的大部分函式是呼

python time模組

最常用的time.time()返回的是一個浮點數,單位為秒。但strftime處理的型別是time.struct_time,實際上是一個 tuple。strptime和localtime都會返回這個型別。 >>> import time >>> t = time.t

pythontime 和datetime類型轉換,字符串型變量轉成日期型變量

-h with ptime 世紀 represent 字符串轉換 代碼 mes ear s1=‘20120125‘; 6 s2=‘20120216‘; 7 a=time.strptime(s1,‘%Y%m%d‘); 8 b=time.st

轉載FusionSphere架構

computing ssis 修改 hyperv 適配器 drive 特殊 架構 avi FusionSphere底層使用Xen架構: 1.單臺物理機上建立hypervisor系統。 2.將所有單個hypervisor系統整合起來管理使用。 安裝C

轉載Spring AOP 、 JDK動態代理、CGLib動態代理

rto 工廠 第一個 lec 僅支持 sel clas sleep gpo 原文地址:https://www.cnblogs.com/kukudelaomao/p/5897893.html AOP是Aspect Oriented Programing的簡稱,面向切面

搬運Wget 命令

clear challenge 多次 進度條 成功 imp 聯網 llb tails      用過 Linux 系統的對於 wget 不陌生吧,從網上下載資源等操作都是少不了它,它體積小但功能集全,支持 FTP HTTP HTTPS 協議下載方式,支持斷點續傳 代理服務器

Selenium-xpath

input end tab UC 子元素 dom 絕對路徑 sele .class 1、XPATH是什麽 XPATH是一門在XML文檔中查找信息的語言,XPATH可用來在XML文檔中對元素和屬性進行遍歷,主流的瀏覽器都支持XPATH,因為HTML頁面在DOM中表示為XHT

配置log4j.properties 與配置步驟

詳解 項目 import throw 得到 容器 地方 med play 一、Log4j基本使用方法 Log4j由三個重要的組件構成:【日誌信息的優先級】,【日誌信息的輸出目的地】,【日誌信息的輸出格式】。 日誌信息的優先級從高到低有ERROR、WARN、 INFO、D

MySQLMySQL鎖

https://www.cnblogs.com/luyucheng/p/6297752.html   一、概述 資料庫鎖定機制簡單來說,就是資料庫為了保證資料的一致性,而使各種共享資源在被併發訪問變得有序所設計的一種規則。對於任何一種資料庫來說都需要有相應的鎖定機制,所以MyS

轉載DHCP協議

為了學習作業系統,今天又在windows上裝了一把virtualbox+debian。安裝的過程中遇到了網路配置的問題。學習了一下橋接,NAT,僅主機三種模式的區別。在這個過程中又遇到了DHCP協議,稍做了瞭解。轉載至此,方便檢視。 原文地址:http://blog.c

NLPGoogle BERT

11號論文放上去,12號各個公眾號推送,13號的我終於在最晚時間完成了前沿追蹤,驚覺上一篇論文竟然是一個月前。。。立個flag以後保持一週一更的頻率。下週開始終於要在工作上接觸NLP了,之後希望會帶來更多自己的東西而不是論文解析。 Attention和Transformer還不熟悉的請移步之前的文章:

NLPUniversal Transformers

上一篇transformer寫了整整兩週。。解讀太慢了。。主要是自己也在理解,而且沒有時間看原始碼,非常慚愧,如果哪裡說錯了希望大佬們可以提醒一下 之前細細研究了attention和transformer之後,universal transformer讀了一遍就理解了,缺乏之前基礎的童鞋們請先移步: 【N

linuxmd5sum 命令

1、命令詳解 $ md5sum --help Usage: md5sum [OPTION]... [FILE]... Print or check MD5 (128-bit) checksums. With no FILE, or when FILE is -, read stand

linuxtop命令

1、引數詳解 $ top -help procps-ng version 3.3.9 Usage: top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols] -b:列印所有程式 -c