python的內置模塊time和datetime的方法詳解以及使用(python內的time和datetime時間格式)


time內置模塊的方法

1、time() 時間戳

time() -> floating point number  浮點數
Return the current time in seconds since the Epoch.
Fractions of a second may be present if the system clock provides them.

import time
print(time.time())

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

1528517838.7509072

這個時間戳是一個秒數,是從1970年凌晨開始算,到現在一共經歷了多少秒

現在是2018年,減去1970年,是48年,

48*365*24*60*60=1513728000

哈哈算出來跟上面的差不多,這就是時間戳,每一秒都不一樣

時間戳可以可以用來計算2個時間的減法,就是比如我下單的時候是一個時間戳,我支付成功再來一個時間戳,可以計算一下我下單到支付花了多少秒

2、localtime(seconds=None) 結構化時間-當地時間
得到的是一個結構化時間

Convert seconds since the Epoch to a time tuple expressing local time.
When 'seconds' is not passed in, convert the current time instead

import time
print(time.localtime())

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

time.struct_time(tm_year=2018, tm_mon=6, tm_mday=9, tm_hour=12, tm_min=36, tm_sec=7, tm_wday=5, tm_yday=160, tm_isdst=0)

那么我們就可以取出來具體的其中的具體的年份或者是時分秒,一周的第幾天,一年的第幾天 

import time
a=time.localtime()
print(a.tm_year,a.tm_mon,a.tm_mday,a.tm_hour,":",a.tm_min,":",a.tm_sec)

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

2018 6 9 12 : 46 : 1
3、gmtime  也是結構化時間 世界標准化時間-UTC

時間標准時間,跟我們的時間差8個小時

4、mktime(p_tuple)

mktime(tuple) -> floating point number

將結構化時間轉換成時間戳

import time
print(time.mktime(time.localtime()))

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

1528522939.0

 5、strftime(format, p_tuple=None)

將結構化時間轉化成字符串時間

%Y  Year with century as a decimal number.
%m  Month as a decimal number [01,12].
%d  Day of the month as a decimal number [01,31].
%H  Hour (24-hour clock) as a decimal number [00,23].
%M  Minute as a decimal number [00,59].
%S  Second as a decimal number [00,61].
%z  Time zone offset from UTC.
%a  Locale's abbreviated weekday name.
%A  Locale's full weekday name.
%b  Locale's abbreviated month name.
%B  Locale's full month name.
%c  Locale's appropriate date and time representation.
%I  Hour (12-hour clock) as a decimal number [01,12].
%p  Locale's equivalent of either AM or PM. 

%X就代表時分秒

import time
print(time.strftime("%Y-%m-%d %X",time.localtime()))

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

2018-06-09 15:11:04
6、strptime(string, format)

將字符串時間轉化為結構化時間

%Y  Year with century as a decimal number.
%m  Month as a decimal number [01,12].
%d  Day of the month as a decimal number [01,31].
%H  Hour (24-hour clock) as a decimal number [00,23].
%M  Minute as a decimal number [00,59].
%S  Second as a decimal number [00,61].
%z  Time zone offset from UTC.
%a  Locale's abbreviated weekday name.
%A  Locale's full weekday name.
%b  Locale's abbreviated month name.
%B  Locale's full month name.
%c  Locale's appropriate date and time representation.
%I  Hour (12-hour clock) as a decimal number [01,12].
%p  Locale's equivalent of either AM or PM.

這里的字符串時間得和后面的結構化時間一一對應才行

import time
print(time.strptime("2018:06:09-15:21:36","%Y:%m:%d-%X"))

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

time.struct_time(tm_year=2018, tm_mon=6, tm_mday=9, tm_hour=15, tm_min=21, tm_sec=36, tm_wday=5, tm_yday=160, tm_isdst=-1)
7、asctime(p_tuple=None)可以加結構化參數,不加參數默認是當前時間

如果你沒有自定義需求時間格式的話,可以之間用這個方法

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

import time
print(time.asctime())

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

Sat Jun  9 15:26:45 2018
8、ctime(seconds=None)可以加時間戳參數,不加參數默認是當前時間

跟7這個asctime出來的格式是一樣的

print(time.ctime())#不加參數,默認是當前時間

Sat Jun  9 15:34:30 2018

print(time.ctime(1228629586.2798274))#加上時間戳(字符串時間)參數

Sun Dec  7 13:59:46 2008

9、datetime  這個相對來說跟好用,第一種用法比較精細,第二種格式也比較好看

import datetime
print(datetime.datetime.now())
print(datetime.datetime.now().strftime("%Y-%m-%d %X"))

C:\python35\python3.exe D:/pyproject/day21模塊/time模塊.py

2018-06-09 15:44:29.870926

2018-06-09 15:44:29


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM