为了账号安全,请及时绑定邮箱和手机立即绑定

如何解决列表索引超出范围错误?

如何解决列表索引超出范围错误?

胡子哥哥 2021-09-14 16:38:05
这是我得到的错误     word[i] += len(words) IndexError: list index out of range这是代码word=[]i=1with open("poem.txt", "r") as f:    for line in f:        words=line.split()        word[i] += len(words)        i += 1for i in range(1,20):    print("For the line "+i+" we have "+word[i]+" words")我想要作为输出的东西是这样的对于第 1 行,我们有 10 个单词对于第 2 行,我们有 20 个单词等等 ...
查看完整描述

2 回答

?
30秒到达战场

TA贡献1828条经验 获得超6个赞

它与您访问数组的方式有关。有一个更好的方法:


word=[]

with open("poem.txt", "r") as f:

    for line in f:

        words=line.split()

        word.append(len(words))


for idx, count in enumerate(word):

    print("For the line " + (idx + 1) + " we have " + count + " words")


查看完整回答
反对 回复 2021-09-14
?
冉冉说

TA贡献1877条经验 获得超1个赞

第一次代码运行字将有 0 个元素,但 i 是 1,因此位置 1 处没有项目。

尝试从 i=0 开始

word=[]
i=0


查看完整回答
反对 回复 2021-09-14
  • 2 回答
  • 0 关注
  • 236 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信