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型的.這兩個要注意一下,我平時用兩種,所以,前幾天建的表,把時間型別...