簡體   English   中英

年份和周數的日期時間

[英]Datetime from year and week number

我有一年和一周的數字,我想轉換成datetime.datetiem對象。 我的(天真?)閱讀文檔暗示strptime('2016 00', '%Y %W')應該這樣做。 然而:

In [2]: from datetime import datetime

In [3]: datetime.strptime('2016 00', '%Y %W')
Out[3]: datetime(2016, 1, 1, 0, 0)

In [4]: datetime.strptime('2016 52', '%Y %W')
Out[4]: datetime(2016, 1, 1, 0, 0)

我究竟做錯了什么?

事實證明,周數不足以讓strptime獲得約會。 在字符串中添加一周的默認日期,以便它可以正常工作。

> from datetime import datetime
> myDate = "2016 51"
> datetime.strptime(myDate + ' 0', "%Y %W %w")
> datetime.datetime(2016, 12, 25, 0, 0)

0告訴它選擇那周的星期日,但你可以在每天的0到6范圍內改變它。

文檔 (見底部注釋7):

當與strptime()方法一起使用時, %U%W僅在指定星期幾和年份時用於計算。

因此,只要您沒有指定工作日,您將有效地獲得與datetime.strptime('2016', '%Y')相同的結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM