各種時間格式之間的轉換

python的time模塊

# 獲得當前的時間戳
ticks = time.time()
print(ticks) #1553244003.4631288

# 當前時間戳向時間元祖轉換
localtime = time.localtime(time.time())
print(localtime)
# time.struct_time(tm_year=2019, tm_mon=3, tm_mday=22, tm_hour=16, tm_min=43, tm_sec=1, tm_wday=4, tm_yday=81, tm_isdst=0)

# 也可直接將一個時間戳轉化爲時間元祖
timetupe = time.localtime(1553241660)
print(timetupe)
# time.struct_time(tm_year=2019, tm_mon=3, tm_mday=22, tm_hour=16, tm_min=1, tm_sec=0, tm_wday=4, tm_yday=81, tm_isdst=0)

# 將時間元祖轉換爲datetime類型
date = time.strftime("%Y-%m-%d %H:%M:%S", timetupe)
print(date) # 2019-03-22 16:01:00

# 將一個時間元祖轉換爲時間戳
date = time.mktime(timetupe)
print(date) # 1553241660.0

python的datetime模塊

# 獲得當前的時間
now = datetime.datetime.now()
print(now) #2019-03-22 16:40:57.610277

對於帶有AM,am,PM,pm的時間字符串進行格式化(例:01/05/2018 07:00:00AM):

import time, datetime

def time12to24(time_string):
    days = time_string.split(' ')[0]
    times = time_string.split(' ')[1]
    print(times)
    t_year = days.split('/')[2]
    t_month = days.split('/')[1]
    t_day = days.split('/')[0]
    t_hour = times.split(':')[0]
    t_min = times.split(':')[1]
    t_sec = times.split(':')[2]
    if times.lower().find('am') > 0:
        t_sec = times[:times.lower().find('am')].split(':')[2]
        if t_hour == '12':
            t_hour = '00'
    if times.lower().find('pm') > 0:
        t_sec = times[:times.lower().find('pm')].split(':')[2]
        if int(t_hour) < 12:
            t_hour = str(int(t_hour)+12)
        else:
            t_hour = '12'
    rtime = t_year+'-'+t_month+'-'+t_day+' '+t_hour+':'+t_min+':'+t_sec
    return rtime

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章