Python中的時(shí)間元組與時(shí)間日期是什么意思

本篇內(nèi)容介紹了“Python中的時(shí)間元組與時(shí)間日期是什么意思”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),遂川企業(yè)網(wǎng)站建設(shè),遂川品牌網(wǎng)站建設(shè),網(wǎng)站定制,遂川網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,遂川網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

一、時(shí)間元組(time.struct_time)

python中時(shí)間元組是一個(gè)比較重要的類型,通過時(shí)間元組我們可以獲取,年月日時(shí)分秒,星期幾,一年中的第幾天等信息。

索引屬性屬性含義屬性取值
0tm_year4位數(shù)年份0000-9999
1tm_mon1-12
2tm_mday1-31
3tm_hour小時(shí)0-23
4tm_min分鐘0-59
5tm_sec0-61,60、61是閏秒
6tm_wday星期幾0-6,0是周一
7tm_yday一年的第幾天1到366,366閏年
8tm_isdst夏令標(biāo)識1-夏令時(shí),0-非夏令時(shí) -1-不確定,可能是因?yàn)槭謩觿?chuàng)建

Python中的時(shí)間元組與時(shí)間日期是什么意思

import time

# <class 'time.struct_time'>
localtime = time.localtime()
# time.struct_time(tm_year=2019, tm_mon=11, tm_mday=3, tm_hour=9, tm_min=8, tm_sec=21, tm_wday=0, tm_yday=307, tm_isdst=0)
print(type(localtime))
print(localtime)

for attr in localtime:
    print(attr)

二、時(shí)間格式化

時(shí)間格式化是非常常用的一個(gè)功能,不管是從字符串到struct_time、date、datetime,還是從struct_time、date、datetime到字符串都需要用到。

格式化主要涉及到2個(gè)函數(shù): strftime:str表示字符串,f是format,time是時(shí)間,就是時(shí)間格式化為字符串 strptime:str表示字符串,p是parse,time是時(shí)間,就是字符串解析為時(shí)間

time和datetime都有這2個(gè)函數(shù),后面會介紹,下面先看一下格式化的含義。

格式含義
%y兩位數(shù)的年份表示,00-99
%Y四位數(shù)的年份表示,0000-9999
%m月份,01-12
%d日期,0-31
%H24小時(shí)制小時(shí)數(shù),0-23
%I12小時(shí)制小時(shí)數(shù),01-12
%M分鐘,00-59
%S秒,00-59
%a本地簡化星期名稱
%A本地完整星期名稱
%b本地簡化的月份名稱
%B本地完整的月份名稱
%c本地日期表示和時(shí)間表示
%j第幾天,001-366
%p本地A.M\P.M
%U第幾周,00-53,星期天為星期的開始
%W第幾周,00-53,星期一為星期的開始
%w星期幾,0-6,星期天為星期的開始
%x本地日期
%X本地時(shí)間
%Z當(dāng)前時(shí)區(qū)的名稱
%%%符合,因?yàn)楸划?dāng)做轉(zhuǎn)義字符

Python中的時(shí)間元組與時(shí)間日期是什么意思

三、time

time模塊,主要處理和時(shí)間元組(struct_time)的格式化和解析。

當(dāng)日也有本地化時(shí)間、獲取時(shí)間戳,程序休眠等函數(shù)。

注意和datetime.time區(qū)分,datetime.time就是一般意義上的日期時(shí)間中的時(shí)間部分,主要就是時(shí)分秒。

import time

# 格林威治天文時(shí)間元組
print(time.gmtime())
print(time.gmtime(1577851199))

# 本地時(shí)間元組
print(time.localtime())
print(time.localtime(1577851199))

# 格式化時(shí)間
# time.asctime([tupletime])
print(time.asctime())

# time.ctime([secs])
print(time.ctime())

# 格式化成2020-01-01 11:59:59形式
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))

# 將格式字符串轉(zhuǎn)換為時(shí)間戳
a = "2020-01-01 11:59:59"
str2TT = time.strptime(a, "%Y-%m-%d %H:%M:%S")

# 時(shí)間元組到時(shí)間戳
ts = time.mktime(str2TT)
print(ts)

# 時(shí)間戳
print(time.time())
# 休眠秒
time.sleep(1)

四、datetime

datetime模塊中主要使用的是: datetime.date:日期(2025-01-01) datetime.time:時(shí)間(12:00:00) datetime.datetime:時(shí)期(2025-01-01 12:00:00)

import datetime
import time

today = datetime.date.today()
print(today)
print(type(today))

# 星期幾,isoweekday星期天是第一天,weekday星期一是第一天
print(today.isoweekday())
print(today.weekday())
# 時(shí)間元組
print(today.timetuple())
# 第幾天
print(today.toordinal())
datetime.date.fromordinal(today.toordinal())

print(datetime.date(2020, 1, 1))
datetime.date.fromtimestamp(time.time())

print(datetime.time(12, 59, 59, 999))

# 現(xiàn)在本地日期
print(datetime.datetime.now())
# 現(xiàn)在utc日期
print(datetime.datetime.utcnow())
print(datetime.datetime(2020, 1, 31, 12, 59, 59, 0))

# 字符串到日期
print(datetime.datetime.strptime('2020-1-1 12:01', '%Y-%m-%d %H:%M'))
# 日期格式化
print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M'))

最常用的還是:

# 字符串得到日期
datetime.datetime.strptime('2020-1-1 12:01', '%Y-%m-%d %H:%M')
# 日期格式化
datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

五、timedelta

timedelta也是datetime模塊下的,主要是用于日期計(jì)算的。

在需要使用到時(shí)間間隔的時(shí)候非常有用,例如需要上一個(gè)月,前一天,上一周這樣的日期,就可以使用datetime和timedelta很容易得到。

import datetime
import time

today = datetime.date.today()
# 上個(gè)月最后一天
lastMonthLastDay = datetime.date(today.year, today.month, 1) - datetime.timedelta(1)
print(lastMonthLastDay)
# 上個(gè)月第一天
lastMonthFirstDay = datetime.date(lastMonthLastDay.year, lastMonthLastDay.month, 1)
print(lastMonthFirstDay)

# 一周之前
print(today - datetime.timedelta(7))

# 本周一
thisMonday = today - datetime.timedelta(today.isoweekday()-1)
print(thisMonday)
# 本周星期天
lastMonday = thisMonday - datetime.timedelta(7)
print(lastMonday)

# 上周星期天
lastSunday = today - datetime.timedelta(days=today.isoweekday())
print(lastSunday)
# 上周星期一
lastMonday = lastSunday - datetime.timedelta(days=6)
print(lastMonday)

# 8小時(shí)后
print(datetime.datetime.now() + datetime.timedelta(hours=8))

start = datetime.datetime.now()
time.sleep(1)
end = datetime.datetime.now()
diff = end - start
# <class 'datetime.timedelta'>
print(type(diff))
print(diff)

六、calendar

import calendar
# 是否是閏年
print(calendar.isleap(2020))

calendar是日歷

“Python中的時(shí)間元組與時(shí)間日期是什么意思”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

網(wǎng)頁名稱:Python中的時(shí)間元組與時(shí)間日期是什么意思
網(wǎng)站網(wǎng)址:http://bm7419.com/article20/iihpjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)外貿(mào)建站、網(wǎng)站收錄網(wǎng)站排名、微信公眾號

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營