對下週幾本週幾等進行日期對映
利用python日期時間處理庫dateutil
和硬編碼,**粗暴,效果有待檢驗
time.txt
今天
明天後天
大後天大大後天
早上中午
晚上傍晚
今日第一天
明日第二天
兩天後第三天
兩天後第三天
三天後第四天
四天後第五天
周一周二
週三周四
周五週六
週日周天
本周一本周二
本週三本周四
本周五本週六
本週日本周天
下周一下周二
下週三下周四
下周五下週六
下週日下周天
下星期一
下星期二
下星期三
下星期四
下星期五
下星期六
下星期日
下星期天
周1周2
周3周4
周5周6
周7
from datetime import date
from dateutil.relativedelta import relativedelta
defparseweekday
(x:str)-
>
int:
'''解析中文的週幾'''
today = date.today(
)if x in
['今天'
,'今日'
,'第一天']:
return today
if x in
['明天'
,'明日'
,'第二天'
,'一天後']:
return today + relativedelta(days=+1
)if x in
['後天'
,'後日'
,'第三天'
,'二天後'
,'兩天後']:
return today + relativedelta(days=+2
)if x in
['大後天'
,'大後日'
,'第四天'
,'三天後']:
return today + relativedelta(days=+3
)if x in
['大大後天'
,'大大後日'
,'第五天'
,'四天後']:
return today + relativedelta(days=+4
)if x in
['大大大後天'
,'大大大後日'
,'第六天'
,'五天後']:
return today + relativedelta(days=+5
) time =
weeks =
none
if x.startswith(
'上')
or x.startswith(
'前')
: weeks =-1
if x.startswith(
'下')
or x.startswith(
'後')
or x.startswith(
'明')
: weeks =
0 count =
0for k, v in time.items():
for i in v:
if i in x:
count +=
1 weekday = k
if count !=1:
return today
elif weeks ==
0or weeks ==-1
:return today + relativedelta(weekday=weekday -
1, weeks=weeks)
else
:if today.isoweekday(
)>= weekday:
return today + relativedelta(days=+1
, weekday=weekday -
1, weeks=-1
)else
:return today + relativedelta(days=+1
, weekday=weekday -1)
if __name__ ==
'__main__'
:with
open
('time.txt'
, encoding=
'utf-8'
)as f:
data = f.read(
).splitlines(
)for x in data:
print
(x, parseweekday(x=x)
)
今天 2020-06
-11明天 2020-06
-12後天 2020-06
-13大後天 2020-06
-14大大後天 2020-06
-15早上 2020-06
-11中午 2020-06
-11晚上 2020-06
-11傍晚 2020-06
-11今日 2020-06
-11第一天 2020-06
-11明日 2020-06
-12第二天 2020-06
-12兩天後 2020-06
-13第三天 2020-06
-13兩天後 2020-06
-13第三天 2020-06
-13三天後 2020-06
-14第四天 2020-06
-14四天後 2020-06
-15第五天 2020-06
-15周一 2020-06
-08周二 2020-06
-09週三 2020-06
-10周四 2020-06
-11周五 2020-06
-12週六 2020-06
-13週日 2020-06
-14周天 2020-06
-14本周一 2020-06
-08本周二 2020-06
-09本週三 2020-06
-10本周四 2020-06
-11本周五 2020-06
-12本週六 2020-06
-13本週日 2020-06
-14本週天 2020-06
-14下周一 2020-06
-15下周二 2020-06
-16下週三 2020-06
-17下周四 2020-06
-11下周五 2020-06
-12下週六 2020-06
-13下週日 2020-06
-14下周天 2020-06
-14下星期一 2020-06
-15下星期二 2020-06
-16下星期三 2020-06
-17下星期四 2020-06
-11下星期五 2020-06
-12下星期六 2020-06
-13下星期日 2020-06
-14下星期天 2020-06
-14周12020-06
-08周22020-06
-09周32020-06
-10周42020-06
-11周52020-06
-12周62020-06
-13周72020-06
-14
python日期時間處理庫dateutil
入門Python這幾本書必看
基礎部分 python程式設計 入門到實踐 理論和實踐恰到好處,行文邏輯流暢,不跳躍,手把手教的感覺,又不囉嗦,非常適合入門。書中涵蓋的內容是比較精簡的,沒有艱深晦澀的概念,最重要的是每個小結都附帶有 動手試一試 環節,學程式設計本來就該多動手實踐,乙個只會理論知識的程式設計師可不是好程式設計師。2...
推薦幾本對創業者很有用的書籍
創業36條軍規 拉卡拉創始人孫陶然將自己多年的創業經歷與思考濃縮在這本書裡,20年來6次創辦和聯合創辦企業的他橫跨了 廣告 公關 消費電子 農業及金融服務業行業,每一次創業都是獨闢蹊徑,守正出奇,每一家企業都在細分行業中名列前茅。也因此,這本書很值得一看。引爆點 馬爾科姆 格拉德威爾以社會上突如其來...
2023年入門python,推薦這樣幾本好書!
藉此問題,奉上初學者最好的python學習書單!1 笨辦法學 python3 2 python程式設計從入門到精通 本書循序漸進 由淺入深地詳細講解了python 3語言開發的核心技術,並通過具體例項的實現過程演練了各個知識點的具體使用流程。通過兩個綜合例項的實現過程,介紹了python 3語言在綜...