久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > python輸入數(shù)字變成月份

python輸入數(shù)字變成月份

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-11 22:48:44 1699714124

python輸入數(shù)字變成月份

1、思路說(shuō)明

可計(jì)算給定區(qū)間的時(shí)間差,即兩者之間共包含幾個(gè)月。然后由第一個(gè)月(開(kāi)始時(shí)間)逐漸累積,最后得到給定時(shí)間區(qū)間所有月份的清單。

2、時(shí)間差計(jì)算:我們可以使用第三方庫(kù)dateutil中的rrule.count函數(shù)來(lái)實(shí)現(xiàn)。

Importdatetimefromdateutilimportrrule

start=datetime.datetime.strptime('2019.01','%Y.%m')

end=datetime.datetime.strptime('2019.05','%Y.%m')print(start.month)

rrule.rrule(rrule.MONTHLY,dtstart=start,until=end).count()

3、每月累積計(jì)算:在這里,我們可以使用for循環(huán)和range()函數(shù),根據(jù)總月數(shù),逐步累積,例如:2019.01-2019.05共5個(gè)月,從0到4迭代,從1+0=1到1+4=5,就可以得到所有月份;此外,當(dāng)月迭代累積結(jié)果超過(guò)12時(shí),將累積結(jié)果除以12取余,并將年份加1,就可以得到正確的年月時(shí)間。

importdatetimefromdateutilimportrruledefget_each_month(start_month,end_month):ifstr(start_month).count('.')!=1orstr(end_month).count('.')!=1:print("ParameterError:Plsinputastringsuchas'2019.01'")return[]ifint(str(start_month).split('.')[1])>12orint(str(end_month).split('.')[1])>12:print('ParameterError:Plsinputcorrectmonthrangesuchasbetween1to12')return[]ifint(str(start_month).split('.')[1])==0orint(str(end_month).split('.')[1])==12:print('ParameterError:Plsinputcorrectmonthrangesuchasbetween1to12')return[]

start=datetime.datetime.strptime(start_month,"%Y.%m")

end=datetime.datetime.strptime(end_month,"%Y.%m")

month_count=rrule.rrule(rrule.MONTHLY,dtstart=start,until=end).count()#計(jì)算總月份數(shù)

ifend

list_month=[]

year=int(str(start)[:7].split('-')[0])#截取起始年份

forminrange(month_count):#利用range函數(shù)填充結(jié)果列表

month=int(str(start)[:7].split('-')[1])#截取起始月份,寫(xiě)在for循環(huán)里,作為每次迭代的累加基數(shù)

month=month+mifmonth>12:ifmonth%12>0:

month=month%12#計(jì)算結(jié)果大于12,取余數(shù)

ifmonth==1:

year+=1#只需在1月份的時(shí)候?qū)δ攴菁?,注意year的初始化在for循環(huán)外

else:

month=12

iflen(str(month))==1:

list_month.append(str(year)+'.0'+str(month))else:

list_month.append(str(year)+'.'+str(month))returnlist_month

以上就是python輸入數(shù)字變成月份的方法,基本的流程分享給大家,看懂后可以進(jìn)行實(shí)例部分的嘗試。更多Python學(xué)習(xí)教程請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
pythongeth如何使用?

python中g(shù)eth如何使用?1、安裝命令pipinstallpy-geth2、快速啟動(dòng)運(yùn)行連接到mainnet的geth>>>fromgethimportLiveGethProcess>>>get...詳情>>

2023-11-13 23:57:18
python用OpenCV在圖像添加文本

python中用OpenCV在圖像添加文本1、要將文本放入圖像中,需要指定以下內(nèi)容寫(xiě)入的文字?jǐn)?shù)據(jù)放置它的位置坐標(biāo)(即數(shù)據(jù)開(kāi)始的左下角)。字體類型(檢查...詳情>>

2023-11-13 23:53:42
python函數(shù)裝飾器的應(yīng)用過(guò)程

python函數(shù)裝飾器的應(yīng)用過(guò)程1、應(yīng)用過(guò)程一般是定義在一個(gè)獨(dú)立模塊中,使用時(shí)會(huì)被導(dǎo)入到其它模塊;函數(shù)裝飾器會(huì)在內(nèi)部定義一個(gè)新函數(shù),然后返回。...詳情>>

2023-11-13 23:35:41
python異步中selectors的使用

python異步中selectors的使用selectors這個(gè)庫(kù)的功能非常理解,類似地發(fā)送信件,如果想等待別人的回信的話,如果沒(méi)有發(fā)送自己的信件的話,一直在...詳情>>

2023-11-13 23:14:05
pythontemp是什么意思

python中temp是什么意思一、temp:臨時(shí)文件夾。根據(jù)操作的過(guò)程進(jìn)行臨時(shí)保存的文件技術(shù)。python中臨時(shí)文件及文件夾使用。使用的是tempfile包安裝...詳情>>

2023-11-13 22:30:53