Python列表超出范围
我在索引列表中的项目时遇到问题,我不确定为什么会出现错误“列表索引超出范围” 使用带有Zip的基本for循环,我正在浏览这两个列表,并返回这两个列表的产品 请参阅下面我的代码:Python列表超出范围,python,python-3.x,list,loops,Python,Python 3.x,List,Loops,我在索引列表中的项目时遇到问题,我不确定为什么会出现错误“列表索引超出范围” 使用带有Zip的基本for循环,我正在浏览这两个列表,并返回这两个列表的产品 请参阅下面我的代码: perc = [] for x,y in zip(value[8:],value[:-8]): perc.append((value[x]/value[y])) 当我检查两个列表的长度len(值[8:])时,len(值[:-8])两个列表的长度似乎相同。您正在迭代列表的元素,但试图将它们用作列表索引 所以如果你
perc = []
for x,y in zip(value[8:],value[:-8]):
perc.append((value[x]/value[y]))
当我检查两个列表的长度len(值[8:])时,len(值[:-8])
两个列表的长度似乎相同。您正在迭代列表的元素,但试图将它们用作列表索引
所以如果你的名单是
[10]
值[:8]
是[10]
,值[-8:][/code>是[10]
然后在循环中,你的x=10,y=10
然后尝试执行value[x]/value[y]
,即value[10]/value[10]
但是10
超出了您的列表范围
编辑:混合了切片,但重点仍然存在。您能否显示值的内容perc=[x/y代表x,y在zip中(值[8:],值[:-8])]
?我怀疑您的问题是值
将是您试图计算的整数列表。但是,您可以将每个整数值放入x
和y
中,然后使用x
和y
作为可能不存在的索引,通过查找值列表进行计算。你是不是只是想做一些额外的事情呢?
@Leporo,你是对的。。我的大脑现在不正常。我去买一些coffee@ChrisDoyle值的内容不是必需的,它是一个整数列表。使用它来填充Sankey图表。是的,你的第二部分是正确的