作為周日歷,在生活中不常用到,它一般用于政府,以及相關會計之間的計劃或者年度相關的日歷之中。那么,具體之間的操作方法,下文就給大家詳細的解答。
基本介紹:
在開發過程中,有些像以單位為一個小的計量單位,下面給大家詳細解答。
使用datetime類格式化進行轉換
strftime方法可以將時間轉換為字符串
strptime方法可以將字符串轉為時間
"%Y,%W,%w"中,"%Y"代表年份,"%W"代表周,"%w"代表一周內的第幾天
from datetime import datetime #時間轉周日歷 a=datetime.now().strftime("%Y,%W,%w") print(a)#2022,28,3 #周日歷轉時間 a=datetime.strptime("2022,12,3","%Y,%W,%w") print(a)#2022-03-23 00:00:00
問題
以上貌似問題解決了,但是問題出在年初和年尾
以2021年12月,2022年1月舉例
2021年12月
2022年1月
from datetime import datetime a=datetime.strptime("2021-12-31","%Y-%m-%d") print(a.strftime("%Y,%W,%w"))#2021,52,5 a=datetime.strptime("2022-01-01","%Y-%m-%d") print(a.strftime("%Y,%W,%w"))#2022,00,6
正確方法
使用isocalendar將日期轉換為周日歷
datetime類型的時間直接調用isocalendar方法 from datetime import datetime def str_to_time(time_str:str)->datetime: return datetime.strptime(time_str,"%Y-%m-%d") time_list=[ "2021-12-30", "2021-12-31", "2022-01-01", "2022-01-02", "2022-01-03", ] for i in time_list: t=str_to_time(i) iso=t.isocalendar() print(i,">",f"{iso.year},{iso.week},{iso.weekday}") #2021-12-30>2021,52,4 #2021-12-31>2021,52,5 #2022-01-01>2021,52,6 #2022-01-02>2021,52,7 #2022-01-03>2022,1,1
使用fromisocalendar將周日歷轉換為日期
from datetime import datetime time_list=( (2021,52,4), (2021,52,5), (2021,52,6), (2021,52,7), (2022,1,1), ) for year,week,weekday in time_list: t=datetime.fromisocalendar(year,week,weekday) print(f"{year},{week},{weekday}",">",t) #2021,52,4>2021-12-30 00:00:00 #2021,52,5>2021-12-31 00:00:00 #2021,52,6>2022-01-01 00:00:00 #2021,52,7>2022-01-02 00:00:00 #2022,1,1>2022-01-03 00:00:00
python代碼
from datetime import datetime def datetime_to_isoweek(datetime_:datetime)->tuple[int,int,int]: """時間轉換為iso周日歷 Args: datetime_(datetime):時間 Returns: tuple[int,int,int]:year,week,weekday """ iso=datetime_.isocalendar() return iso.year,iso.week,iso.weekday def isoweek_to_datetime(isoweek:tuple[int,int,int])->datetime: """iso周日歷轉換為時間 Args: isoweek(tuple[int,int,int]):year,week,weekday Returns: datetime:時間 """ year,week,weekday=isoweek return datetime.fromisocalendar(year,week,weekday)
以上就是Pythom實現周日歷的具體代碼實例,希望可以給大家帶來幫助。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/127692.html
摘要:類是一個抽象類,它為特定瞬間與一組諸如等日歷字段之間的轉換提供了一些方法,并為操作日歷字段例如獲得下星期的日期提供了一些方法。是不變的日期時間對象代表一個日期時間,往往被視為年月日時分秒。獲得實例的日期和時間。 時區 GMT(Greenwich Mean Time):格林尼治時間,格林尼治標準時間的正午是指當太陽橫穿格林尼治子午線時(也就是在格林尼治上空最高點時)的時間。 UTC(U...
摘要:在設置或獲得或字段時,必須確定一個月或一年的第一個星期,以此作為參考點。一個月或一年的第一個星期被確定為開始于的最早七天,它最少包含那一個月或一年的天數。例如,特定子類可能將某一年第個星期之前的那個星期指定為前一年的第個星期。 Calendar工具類解釋 首先解釋下Calendar工具類的作用。根據API的解釋,Calendar 類是一個抽象類,它為特定瞬間與一組諸如 YEAR、MON...
摘要:即之前實現了一個月視圖日歷,我們今天來實現一個二維周視圖的日歷。難點實現內容部件插入我們實現這個二維周視圖日歷的主要目的就是要支持插入任意的內容,上面已經準備好了插入內容的元素,這里要做的就是將數據繪制成放置在合適的位置。 即之前實現了一個月視圖日歷,我們今天來實現一個二維周視圖的日歷。 以下進行分析其中的關鍵部分。 結構準備 不同之處在于其在日歷的基礎上還有一個分類軸,用于展示不同的...
知識普及 陽歷:就是以太陽來計算日期的一類歷法; 陰歷:根據月亮周期制定出的歷法,由陰轉晴,再由晴轉陰為一個月,換算下來合29天12個小時44分零二秒八,接近30天。 公歷:屬陽歷的一種,我國現在使用的就是公歷; 農歷:我國的農歷是一種陰陽合歷,用來指導農業十分方便。 總結來說公歷屬于陽歷,但是陽歷并不一定是公歷。農歷不是陰歷,而是陰陽歷,是以陰歷為主,陽歷為輔。 公歷:用阿拉伯數...
摘要:中提供了一個和的模塊可以用來做格式化日期和時間的。格式化日期通過模塊中方法來格式化日期函數接收時間元組并返回以可讀字符串表示薪資的時間格式的話由參數決定。每日寬度間隔為字符每行的長度為是每星期的行數。 我們可以通過學習在Python中對日期時間的處理,可以在快速的完成工作,比如: 將日期時間作為日志信息的內容輸入 計算某一個功能的執行時間 用日期命名一個文件的名稱 記錄或者展示文件的...
閱讀 911·2023-01-14 11:38
閱讀 878·2023-01-14 11:04
閱讀 740·2023-01-14 10:48
閱讀 1982·2023-01-14 10:34
閱讀 942·2023-01-14 10:24
閱讀 819·2023-01-14 10:18
閱讀 499·2023-01-14 10:09
閱讀 572·2023-01-14 10:02