python常量大小列表的列表索引超出范围错误
我试图从一个txt文件中读取一定数量的行,并将每行存储的一些字拆分为变量。然而,我不断得到一个索引超出范围的错误,我不明白为什么 代码如下:python常量大小列表的列表索引超出范围错误,python,Python,我试图从一个txt文件中读取一定数量的行,并将每行存储的一些字拆分为变量。然而,我不断得到一个索引超出范围的错误,我不明白为什么 代码如下: for i in range(230218): count=i+1 if count != coordinate: writefile.write(str(count)+"0") else: writefile.write(str(count)+coverage)
for i in range(230218):
count=i+1
if count != coordinate:
writefile.write(str(count)+"0")
else:
writefile.write(str(count)+coverage)
lineread=f.readline()
x=lineread.split()
coordinate=int(x[1])
coverage=x[3]
而误差表示tat坐标和覆盖范围超出范围
编辑:我认为问题在于输入文件太大,所以根本无法生成x的列表。当我在另一台机器上运行时,问题自行解决了。使用
len(x)
也许你得到的行没有空格,所以split()
在x
中给你一个元素,x[1]
不存在。请回答你的问题,并给出与你的问题无关的回溯全文,但是230218
是一个相当大的数字。您可能希望在Python2中使用xrange
,以获得更好的性能和更少的内存使用。如果您使用的是Python<3,您应该强烈地使用xrange
,它是一个序列对象,计算起来很慢。您知道您可以执行range(123219)
这将避免count=i+1