有人能解释一下为什么当我多次调用这个函数时,L在默认情况下从未设置为空?但是,任何后续调用的结果都是将L附加到前面调用的所有结果之后?在
函数将数据分成7天的块,从最后一个日期([::-1])开始, 计算每7天的平均值,并将结果作为值附加到 名单。忽略不完整的块
数据的默认值是顺序格式的日期列表。在
def separate(data = [i for i in w][::-1],L = []):
print("separate has been called, data is %s and L is %s" % (data, L))
if len(data)<7:
return L
total = 0
dates = 0
for value in data[:7]:
if w[value] != "None":
total += float(w[value])
dates += 1
L.append(total / dates)
return separate(data[7:], L)
取自the documentation:
相关问题 更多 >
编程相关推荐