$python日期和時間的處理

總結一下python中對日期和時間的經常使用處理方法。python

準備

import time,datetime

經常使用操做

輸出當前的日期時間

方式一:code

now = time.localtime()

print '【Output】'
print type(now)
print now
print now[:3]
【Output】
<type 'time.struct_time'>
time.struct_time(tm_year=2017, tm_mon=8, tm_mday=21, tm_hour=23, tm_min=15, tm_sec=42, tm_wday=0, tm_yday=233, tm_isdst=0)
(2017, 8, 21)

輸出當前時間戳(單位:秒):對象

print '【Output】'
print time.time()
【Output】
1503329021.99

方式二:字符串

now = datetime.datetime.now()
print '【Output】'
print now.strftime('%Y-%m-%d %H:%M:%S')
【Output】
2017-08-21 23:23:46

格式化輸出當前時間

t = time.localtime()
print '【Output】'
print time.strftime('%Y-%m-%d %H:%M:%S',t)
time.sleep(2)
print time.strftime('%Y-%m-%d %H:%M:%S')  # 若是不指定時間,輸出的就是當前時間
【Output】
2017-08-21 23:17:57
2017-08-21 23:17:59

附:格式化字符串總結class

  • %a 英文星期簡稱
  • %A 英文星期全稱
  • %b 英文月份簡稱
  • %B 英文月份全稱
  • %c 本地日期時間
  • %d 日期,1~31
  • %H 小時,0~23
  • %I 小時,0~12
  • %m 月,01~12
  • %M 分鐘,0~59
  • %S 秒,0~59
  • %j 年中當天的天數
  • %w 星期數,1~7
  • %W 年中的第幾周
  • %x 當天日期,格式:01/31/17
  • %X 本地的當天時間
  • %y 年份,00~99
  • %Y 年份完整拼寫

字符串轉爲日期時間對象

t = time.strptime('2000-1-1 10:00','%Y-%m-%d %H:%M')  # 注:先後格式要保持一致,不然轉換會出錯
print '【Output】'
print type(t)
print t
【Output】
<type 'time.struct_time'>
time.struct_time(tm_year=2000, tm_mon=1, tm_mday=1, tm_hour=10, tm_min=0, tm_sec=0, tm_wday=5, tm_yday=1, tm_isdst=-1)

構造datetime對象

dt = datetime.datetime(2010,1,1,23)
print '【Output】'
print type(dt)
print dt
【Output】
<type 'datetime.datetime'>
2010-01-01 23:00:00

將struct_time對象轉爲時間戳(秒)

now = time.localtime()
timestamp = time.mktime(now)
print '【Output】'
print timestamp
【Output】
1503329307.0

將時間戳(秒)轉爲struct_time對象

timestamp = 1480000000
print '【Output】'
print time.localtime(timestamp)
【Output】
time.struct_time(tm_year=2016, tm_mon=11, tm_mday=24, tm_hour=23, tm_min=6, tm_sec=40, tm_wday=3, tm_yday=329, tm_isdst=0)
相關文章
相關標籤/搜索