繁体   English   中英

Pyhton3.10 datetime strftime和isocalendar不一致

[英]Pyhton3.10 datetime strftime and isocalendar disagreement

我相信在下面的例子中strftime是错误的。 年份应该是 2021 年isocalendar是对的。

Python 3.10.0 (v3.10.0:b494f5935c, Oct  4 2021, 14:59:20) [Clang 12.0.5 (clang-1205.0.22.11)] on darwin
>>> import datetime
>>> datetime.date( 2022, 1, 1 ).strftime( '%Y-%V' )
'2022-52'
>>> datetime.date( 2022, 1, 1 ).isocalendar()
datetime.IsoCalendarDate(year=2021, week=52, weekday=6)

实际上这是预期的行为,因为您使用的是%Y格式说明符,它将返回日期 object 的实际年份。 但是,您想使用%G格式说明符来返回日期的相应 ISO 年份,因此请尝试:

import datetime
datetime.date(2022, 1, 1).strftime('%G-%V')
# '2021-52'

Find out more from the docs: https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM