python 時間操作

2022-08-24 01:15:14 字數 1984 閱讀 3254

import datetime

import time

#獲取當前時間

datetime.datetime.now()

#獲取當前日期

datetime.date.today()

#字串轉換為時間格式

>>> t = time.strptime("2009-08-08", "%y-%m-%d")

>>> y,m,d = t[0:3]

>>> datetime.date(y,m,d)

datetime.date(2009, 8, 8)

>>> datetime.datetime(y,m,d)

datetime.datetime(2009, 8, 8, 0, 0)

#返回前一天的日期

>>> import datetime

>>> today = datetime.date.today()

>>> days = datetime.timedelta(days=1)

>>> print today

2010-04-15

>>> print days

1 day, 0:00:00

>>> print today-days

2010-04-14

>>>

#datetime 物件獲取當天日期

>>> now = datetime.datetime.now()

>>> today = now.date().today()

>>> print today

2010-04-15

>>> print now

2010-04-15 14:41:21.421000

獲取時間戳

>>> time.time()

1446885023.80355

時間戳轉換時間

>>> time.strftime('%y-%m-%d %h:%m:%s', time.localtime(time.time()))

'2015-11-07 16:32:45'

時間轉換時間戳

>>> time.mktime(time.strptime('2015-11-06 16:30:00','%y-%m-%d %h:%m:%s'))

1446798600.0

獲取年與日時分秒

>>> time.strftime("%y-%m-%d %h:%m:%s", time.localtime())

'2015-11-07 16:45:46'

>>> print (time.strftime("%y-%m-%d %x", time.localtime()))

2015-11-07 16:52:31

獲取微妙(百萬分之一秒)

>>> datetime.datetime.now().microsecond 

327545

獲取時間+微秒數

>>> now = datetime.datetime.now()

>>> "%s.%s" % (now.strftime('%y%m%d%h%m%s'), now.microsecond)

'20151107172412.390765'

python格式化日期時間的函式為datetime.datetime.strftime();由字串轉為日期型的函式為:datetime.datetime.strptime(),兩個函式都涉及日期時間的格式化字串,列舉如下:

例子:字串轉換成datetime

>>> c = datetime.datetime.strptime('sep-21-09 16:34','%b-%d-%y %h:%m');

>>> c

datetime.datetime(2009, 9, 21, 16, 34)

datetime轉換成字串

>>> datetime.datetime.now().strftime('%b-%d-%y %h:%m:%s');

'sep-22-09 16:48:08'

python時間操作

1 計算時間差 q 如何方便的計算兩個時間的差,如兩個時間相差幾天,幾小時等 a 使用datetime模組可以很方便的解決這個問題,舉例如下 import datetime d1 datetime datetime 2009,3 23 d2 datetime datetime 2009,10 7 d...

python時間操作

不管何時何地,只要我們程式設計時遇到了跟時間有關的問題,都要想到 datetime 和 time 標準庫模組,今天我們就用它內部的方法,詳解python操作日期和時間的方法。1.將字串的時間轉換為時間戳 複製 如下 方法 a 2013 10 10 23 40 00 將其轉換為時間陣列 import ...

python 時間操作

把2018年6月30日轉化為元組和時間戳 time str 2018 06 30 09 59 26 print time.strptime time str,y m d h m s tup time time.strptime time str,y m d h m s print time.mkti...