Python時(shí)間處理方式匯總

目錄
1.時(shí)間獲取&計(jì)算
2.多種時(shí)間格式相互轉(zhuǎn)換

1.時(shí)間獲取&計(jì)算

# 獲取當(dāng)前時(shí)間  2018-05-31 21:31:53.430575
now = datetime.datetime.now()
print(now)
print(type(now))

# 獲取當(dāng)天日期  2018-05-31
today = datetime.datetime.now().date()
today = datetime.date.today()
print(today)

# 當(dāng)天開(kāi)始和結(jié)束時(shí)間  2018-05-31 00:00:00  2018-05-31 23:59:59.999999
print(datetime.datetime.combine(datetime.date.today(), datetime.time.min))
print(datetime.datetime.combine(datetime.date.today(), datetime.time.max))

# 時(shí)間加減
today = datetime.date.today()
tomorrow = today + datetime.timedelta(days=1)
print('tomorrow:' + str(tomorrow))

# 本周最后一天(本周周日)
today = datetime.date.today()
sunday = today + datetime.timedelta(6 - today.weekday())
print('sunday:' + str(sunday))

# 本月最后一天
today = datetime.date.today()
_, last_day_num = calendar.monthrange(today.year, today.month)
last_day = datetime.date(today.year, today.month, last_day_num)
print('last_day:' + str(last_day))

# 上月最后一天
today = datetime.date.today()
first = datetime.date(day=1, month=today.month, year=today.year)
lastMonth = first - datetime.timedelta(days=1)
print('lastMonth:' + str(lastMonth))

# 時(shí)間戳
timestamp = time.time()
print(timestamp)

# time tuple  time.struct_time(tm_year=2018, tm_mon=5, tm_mday=31, tm_hour=21, tm_min=35, tm_sec=14, tm_wday=3, tm_yday=151, tm_isdst=0)
localtime = time.localtime()
print(localtime)

    # 獲取下個(gè)周五
    # def getNextFriday(startDay):
    # today = datetime.date.today()
    oneday = datetime.timedelta(days=1)
    m1 = calendar.FRIDAY
    while startDay.weekday() != m1:
        startDay += oneday
    nextFriday = startDay.strftime('%Y%m%d')

    return nextFriday

2.多種時(shí)間格式相互轉(zhuǎn)換

# datetime->string(2018-05-31 21:44:20)
now = datetime.datetime.now()
now_str = now.strftime("%Y-%m-%d %H:%M:%S")
print(now_str)

# datetime -> date
example_date = datetime.datetime.now().date()
print(example_date)

# datetime -> timestamp
now = datetime.datetime.now()
timestamp = time.mktime(now.timetuple())
print(timestamp)

# string->datetime
example_datetime = datetime.datetime.strptime("2018-05-31 21:31:53", "%Y-%m-%d %H:%M:%S")
print(example_datetime)

# date -> datetime
today = datetime.date.today()
example_datetime = datetime.datetime.combine(today, datetime.time())
print(example_datetime)

# timestamp->datetime
example_datetime = datetime.datetime.fromtimestamp(1421077403.0)
print(example_datetime)
    
    # 時(shí)間加減
    starttime = starttime + datetime.timedelta(days=1)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容