首页 > 解决方案 > 将第 54 周设为 python 的第 1 周

问题描述

所以我从我的教育中得到了我的公鸡,出于某种奇怪的原因,几周的标签完全不正确......直到第 53 周的一切工作都很好,但由于某种原因,他们决定第 54 周也存在,现在我的代码正在崩溃(当然)

所以我需要一些代码告诉我的代码第 54 周实际上是第 01 周,第 55 周是第 02 周,第 56 周是第 03 周等等。我想但我不确定如何继续是这样的:

if week >= 54:
   something should happen here
def BuildTimeTable(Days):
    #print(Days)
    TimeTable = []
    for i in range(len(Days)):
        for j in range(len(Days[i])):
            for k in range(len(Days[i][j])):
                day = Days[i][j].get("Dag")[k]
                start = Days[i][j].get("Begintijd")[k]
                end = Days[i][j].get("Eindtijd")[k]
                desc = Days[i][j].get("Activiteit")[k]
                room = Days[i][j].get("Locatie")[k]
                staff = Days[i][j].get("Docent")[k]
                dates = Days[i][j].get("Weken")[k]
                year = "2019"
                week = str(dates-1)
                print(week)
                print(dates)
                year_week_day = year + "-" + week + "-" + str(day)
                result_date = str(datetime.datetime.strptime(year_week_day, "%Y-%W-%A").date())
                AddTimeTableEvent(TimeTable, day, start, end, desc, room, staff, result_date)
    #print(TimeTable)
    return TimeTable

我现在得到的错误是:

Traceback (most recent call last):
  File "swscust2ics.py", line 219, in <module>
    TimeTable = BuildTimeTable(Days)
  File "swscust2ics.py", line 139, in BuildTimeTable
    result_date = str(datetime.datetime.strptime(year_week_day, "%Y-%W-%A").date())
  File "/usr/local/Cellar/python@2/2.7.16/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_strptime.py", line 332, in _strptime
    (data_string, format))
ValueError: time data '2019-54-maandag' does not match format '%Y-%W-%A'

标签: pythondatetimepython-datetimestrptime

解决方案


推荐阅读