以给定格式python获取不同日期的周数

问题描述 投票:0回答:1

我收到格式的日期列表

Date
20180223
20180120
20180201 

我想在新专栏中获取这些周数

Date        Week_num 
20180223       8 
20180120       3 
20180210       6

用于获取日期的代码是:

yyyymmdd= (dt.datetime.today()-timedelta(days=1)+timedelta(hours=5.3)).strftime('%Y%m%d')

我需要帮助才能获得相同的周数。

python date-conversion
1个回答
0
投票

你必须将你的日期转换回datetime.date()对象:

>>> mydate = datetime.datetime.strptime("20180223", "%Y%m%d").date()
>>> mydate
datetime.date(2018, 2, 23)

datetime.date()有一个date.isocalendar(),其中包含ISO年份,ISO周数和ISO工作日:

>>> mydate.isocalendar()
(2018, 8, 5)

正如您所看到的,元组的第二个条目是您要查找的周数。

>>> mydate.isocalendar()[1]
8
© www.soinside.com 2019 - 2024. All rights reserved.