我是编程和python的新手,所以请耐心等待。
我有以下代码:
Date_Entered = str(raw_input('Enter Current Date in the form mm/dd/yyyy: '))
Split_Date_Entered = Date_Entered.split('/')
Base_Year = 2013
Base_Month = 1
Base_Day = 1
Entered_Year = int(Split_Date_Entered[2])
Entered_Month = int(Split_Date_Entered[0])
Entered_Day = int(Split_Date_Entered[1])
NumberOfDaysInMonth = [0,31,28,31,30,31,30,31,31,30,31,30,31]
N = NumberOfDaysInMonth
Month_Difference = Entered_Month - Base_Month
MD = Month_Difference
我的目标是在同一年(2013年)取一个日期并计算自那天起的天数。 我希望Month_Differnce可以作为NumbersOfDaysInMonth列表的索引。 然后我想将NumbersOfDaysInMonth中的项目从第一个项目汇总到Month_Difference结果为 我尝试过切片列表,然后将结果列表汇总并通过以下方式对其进行汇总:
slice(N[0],N[MD])
输出
slice(0, 31, None)
我有点困惑于为什么它会回归“无”的最正确价值。但我继续尝试总结价值, 我将列表分配给变量NewList,然后尝试按以下方式对列表求和:
sum(NewList)
我收到
的错误消息TypeError:' slice'对象不可迭代
有人可以帮助我理解错误的概念 并告诉我如何纠正它
答案 0 :(得分:0)
也许this article帮助您。
sum(NewList[slice(start,stop)])
sum(NewList[slice(1,10)])
答案 1 :(得分:-1)
您想要从年初到输入日期的所有日期的总和。假设输入的日期是6月15日。在这种情况下,我们需要31+28+31+30+31
ENTERED_MONTH = 6
sum(N[:ENTERED_MONTH])
给你你想要的东西。然后只需添加Entered_Day
的数字:
days_elapsed = Entered_Day + sum(N[:Entered_Month])
仅供参考,您的NumberOfDaysInMonth
列表以0开头。这是不正确的。列表应该是:
[31,28,31,30,31,30,31,31,30,31,30,31]