我的程序使用库中的findall函数re对文件中的所有数字求和:
fh=open(fname)
lst=re.findall('[0-9]+',fh.read())
findall应该返回一个列表吧?所以我应该像这样循环遍历它:
for i in lst :
s=s+int(lst[i])
但我收到回溯错误,上面写着:
s=s+int(lst[i])
TypeError: list indices must be integers or slices, not str
现在如果我使用它就可以了range():
for i in range(len(lst))
我只是不明白为什么我得到这个错误原因列表默认用整数索引对吗?有人可以向我解释吗?谢谢你 !