python時間戳與日期互轉

2021-09-12 20:55:26 字數 1852 閱讀 7611

time模組中時間表現的格式主要有三種:

a、timestamp時間戳,時間戳表示的是從2023年1月1日00:00:00開始按秒計算的偏移量

b、struct_time時間元組,共有九個元素組。

c、format time 格式化時間,已格式化的結構使時間更具可讀性。包括自定義格式和固定格式。

# 轉換時間為時間戳

def generate_timestamp(dt):

#轉換成時間陣列

timearray = time.strptime(dt, "%y-%m-%d")

#轉換成時間戳

timestamp = time.mktime(timearray)

return timestamp

# 轉換時間為%y-%m-%d %h:%m:%s格式

def convertt_timestamp(tp):

time_origin = time.localtime(tp)

time_o = time.strftime('%y-%m-%d %h:%m:%s', time_origin)

return time_o

# 轉換時間為gmt時間格式:%a, %d %b %y %h:%m:%s gmt

def gmt_time_now(gmt_format='%a, %d %b %y %h:%m:%s gmt'):

return datetime.datetime.utcnow().strftime(gmt_format)

# 獲取當前時間戳

def unix_time_now():

return str(int(time.time()))

# 獲取當前日期

def today():

return time.strftime('%y-%m-%d', time.localtime(time.time()))

datetime模組包括datetime、date、time和timedelta等4個物件。這裡不詳細演示了,網上有大量的講解文章。這裡直接上**,演示日期、時間戳互轉。

首先安裝乙個dateutils第三方模組包,dateutil可以將幾乎任何形式的字串日期資料解析為datetime物件。

pip install dateutils
import dateutil.parser

import datetime

# 轉換時間為時間戳

def generate_timestamp(tr):

tm = dateutil.parser.parse(tr).timestamp()

return tm

# 轉換時間為%y-%m-%d %h:%m:%s格式

def convertt_timestamp(tm,frm='%y-%m-%d %h:%m:%s'):

tr = datetime.datetime.fromtimestamp(tm).strftime(frm)

return tr

if __name__ == '__main__':

tr = '2018-3-25 10:23:55'

print(generate_timestamp(tr))

tm = 1521944635.0

print(convertt_timestamp(tm))

從**量和複雜度來看datetime模組要比time簡潔,而且大部分的日期時間操作在datetime模組裡面都有封

python時間戳與日期格式互轉

def stamp to datetime stamp,strformat y m d h m s 時間戳轉日期格式 import datetime import time stamp int stamp strf time.strftime strformat,time.localtime sta...

python 時間戳與日期的互轉

最近發現好多 返回的時間都是10位或者13位的時間戳,在python裡面這個是沒法直接以時間形式儲存的,所以需要轉換啊!下面這個是直接戳直接轉日期 時間戳轉日期,日期轉時間戳 def timestamptodatetime int time try if len int time 13 return...

php時間戳與日期互轉

php時間大的來分有兩種,一是時間戳型別 1228348800 二是正常日期格式 2008 12 4 所以存到資料庫也有兩種形式了 真正不止,我的應用就兩種 時間戳型別我是儲存為字串的,這個是比較方便的.正常日期型別是儲存為date型的.這兩個要注意一下,我平時用兩種,所以,前幾天建的表,把時間型別...