Python中time, strftime和strptime

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

>>> import time
>>> t = time.time()
>>> t
1202872416.4920001
>>> type(t)
<type 'float'>
>>> t = time.localtime()
>>> t
(2008, 2, 13, 10, 56, 44, 2, 44, 0)
>>> type(t)
<type 'time.struct_time'>
>>> time.strftime('%Y-%m-%d', t)
'2008-02-13'
>>> time.strptime('2008-02-14', '%Y-%m-%d')
(2008, 2, 14, 0, 0, 0, 3, 45, -1)

1、strftime的用法

strftime可以用來獲得當前時間,可以將時間格式化爲字符串等等,還挺方便的。但是需要注意的是獲得的時間是服務器的時間,注意時區問題,比如gae撒謊那個的時間就是格林尼治時間的0時區,需要自己轉換。

strftime()函數將時間格式化 
我們可以使用strftime()函數將時間格式化爲我們想要的格式

#!/usr/bin/python
import time

t = (2009, 2, 17, 17, 3, 38, 1, 48, 0)
t = time.mktime(t)
print time.strftime("%b %d %Y %H:%M:%S", time.gmtime(t))

#輸出:Feb 17 2009 09:03:38

2.strptime的用法

Python time strptime() 函數根據指定的格式把一個時間字符串解析爲時間元組。 
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 當前時區的名稱
%% %號本身

實例

#!/usr/bin/python
import time

struct_time = time.strptime("30 Nov 00", "%d %b %y")
print "returned tuple: %s " % struct_time

#輸出:returned tuple: (2000, 11, 30, 0, 0, 0, 3, 335, -1)

原文:https://blog.csdn.net/Mrzhangjwei/article/details/54377802 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章