python中list index out of range的问题,如何解决?

如题所述

list index out of range一般是由于数组下标超过数组长度了:如在C语言中:a[10], 那么你引用a[10]就会出这类型错误(因为其范围是a[0]~a[9])在python中:a = [1,2,3,4,5], 那么如果你使用a[5]也会出类似问题(范围为a[0]~a[4])。

外部输入的数据都可能存在问题。所以通常在readlines后要做一次处理:

for line in file.readlines():
if not line.strip():continue
r = line.split('\t')
if len(r)<3:continue
print r
try:
records.setdefault(int(r[1]), {})
records[int(r[1])].setdefault(int(r[0]), {})
records[int(r[1])][int(r[0])] = float(r[2])
except ValueErro:
continue

这样就避免了空行,字段数不足,以及类型转换出错。

扩展资料:

Python (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。

Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)许可。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。

常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。

7月20日,IEEE发布2017年编程语言排行榜:Python高居首位 。2018年3月,该语言作者在邮件列表上宣布 Python 2.7将于2020年1月1日终止支持。用户如果想要在这个日期之后继续得到与Python 2.7有关的支持,则需要付费给商业供应商。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-12-24
在Python中,list index out of range指的是尝试访问一个不存在的列表索引。要解决这个问题,可以通过检查列表的长度,确保访问的索引不超出范围。另外,也可以使用try/except语句来捕获异常并进行处理。
相似回答