python 统计多年降雨数据 每年 最大降雨连续日数

问题遇到的现象和发生背景

我想统计1962到2020年日降雨数据的 每年 最大降雨连续日数
我想用两个for循环,第一个for循环提取每年的数据;第二个for循环统计那一年的最大降雨连续日数

问题相关代码,请勿粘贴截图
k = list(range(0, 59, 1))
zh_max   = []
sz_max   = []

for m in k:
    n=k+1962
    l  = str(n)
    li1   = Rain_zh[l]
    li2   = Rain_sz[l]
    max_time1 = 0   # 已知最大连续出现次数初始为0
    cur_time1 = 1   # 记录当前元素是第几次连续出现
    pre_element1 = None   # 记录上一个元素是什么
    max_time2 = 0   # 已知最大连续出现次数初始为0
    cur_time2 = 1   # 记录当前元素是第几次连续出现
    pre_element2 = None   # 记录上一个元素是什么
    for i in li1:
            if i == pre_element1:   # 如果当前元素和上一个元素相同,连续出现次数+1,并更新最大值
                cur_time1 += 1
                max_time1 = max((cur_time1, max_time1))
            else:   # 不同则刷新计数器
                pre_element1 = i
                cur_time1 = 1
            zh_max.append(max_time1)

运行结果及报错内容
datetimelike index using a single string to slice the rows, like `frame[string]`, is deprecated and will be removed in a future version. Use `frame.loc[string]` instead.
Traceback (most recent call last):

  File "C:\Users\HP\AppData\Local\Temp/ipykernel_2032/1729459897.py", line 40, in <module>
    n=k+1962

TypeError: can only concatenate list (not "int") to list

我的解答思路和尝试过的方法

想请问解决的方法,或者解决的新思路,谢谢大家!

img

我想要达到的结果

img

k是列表不能与数值相加

n=k+1962

应该改成

n=m+1962

k 改成 m

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

首先报错的原因是list(列表)不能与int(整数)相加,在你的代码中

for m in k

是将k这个列表里面的元素依次传递给了m这个变量,这个变量的类型跟列表里面的元素类型是一样的
这里可以这样修改

    n=k+1962

改为

    n=m+1962

img