1. 程式人生 > >Day 4-2 time & datetime模塊

Day 4-2 time & datetime模塊

格林威治 second tuple %d 通過 cond cal div time模塊

time模塊.

 1 import time
 2 time.time()
 3 #輸出:    1523195163.140625
 4 time.localtime()    # 獲取的是操作系統的時間,可以添加一個時間戳參數
 5 # 輸出: time.struct_time(tm_year=2018, tm_mon=4, tm_mday=8, tm_hour=21, tm_min=47, tm_sec=33, tm_wday=6, tm_yday=98, tm_isdst=0)  
 6 
 7 a = time.localtime()  # 可以把這個時間賦給一個變量,通過變量獲取其他的屬性
8 print(%s-%s-%s%(a.tm_year,a.tm_mon,a.tm_mday)) 9 #輸出: 2018-4-8 10 time.gmtime() # 獲取格林威治時間,可以添加一個時間戳參數 11 # 輸出:time.struct_time(tm_year=2018, tm_mon=4, tm_mday=8, tm_hour=13, tm_min=58, tm_sec=46, tm_wday=6, tm_yday=98, tm_isdst=0) 12 13 (time.mktime(a)) # 把上面的a轉換成一個時間戳. 14 #輸出:1523196109.0
15 time.sleep(4) #程序延時4秒 16 (time.asctime()) # 把一個表示時間的元組或者struct_time表示為這種形式:‘Sun Oct 1 12:04:38 2017‘。 17 #輸出:Sun Apr 8 22:04:14 2018 18 time.ctime([secs]) #:把一個時間戳(按秒計算的浮點數)轉化為time.asctime()的形式。如果參數未給或者為None的時候,將會默認time.time()為參數。它的作用相當於time.asctime(time.localtime(secs))。 19 20 time.strftime("
%Y-%m-%d %X",time.localtime()) #把一個時間轉換成指定的格式. 21 #輸出:2018-04-08 22:09:21 22 23 #時間格式常用的.Ymd,HMS(亞麻跌,好嘛爽) 表示年月日,時分秒.

如何把一個時間格式的字符串轉換成時間呢?

s = "2008-10-01 08:30:29"
s1 = time.strptime(s,"%Y-%m-%d %X")
# s1 = time.struct_time(tm_year=2008, tm_mon=10, tm_mday=1, tm_hour=8, tm_min=30, tm_sec=29, tm_wday=2, tm_yday=275, tm_isdst=-1)

time.mktime(s1)    #把一個時間元組轉換成時間戳
#輸出: 1222821029.0
    

datetime模塊

a = datetime.datetime.now()  #獲取當前時間
print(a)
# 2018-04-08 22:33:36.343750
a.timestamp()   # a的時間戳
a.year            # a的年份
a.today()          # a的日期和時間
a.timetuple()   # a的時間元組.
#上面輸出分別是:
#1523198368.28125
#2018
#2018-04-08 22:39:28.281250
#time.struct_time(tm_year=2018, tm_mon=4, tm_mday=8, tm_hour=22, tm_min=39, tm_sec=28, tm_wday=6, tm_yday=98, tm_isdst=-1)
            
s = datetime.date.fromtimestamp(time.time())  #把一個時間戳轉為datetime日期類型
print(s)    # 2018-04-08

時間的運算:

1 t = datetime.timedelta(2)   # 默認填寫是天數.可以是hours,minutes,seconds
2 t1 = datetime.datetime.now() -t  # 當前減去2天
3 print(t1)   # 2018-04-06 22:47:12.359375

替換時間:

1 d= datetime.datetime.now()
2 d1 = d.replace(year=2008,month=10,day=1,hour=10,minute=12,second=33,microsecond=8888)
3 print(d1)  # 2008-10-01 10:12:33.008888

Day 4-2 time & datetime模塊