You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

列表推导式报错TypeError: list indices must be integers or slices如何修复?

问题修复方案

你的错误根源在于列表推导式里的i已经是records中的子列表元素,而非元素的索引。你用records[i]相当于试图用子列表作为索引去访问列表,这显然不符合列表索引必须是整数/切片的要求,所以触发了TypeError。

正确的写法应该直接使用i本身来访问第二个元素:

# 如果b是变量则去掉引号,这里以字符串'b'为例
records = [i for i in records if i[1] != 'b']

举个实际例子验证:
假设原始records为[[1, 'a'], [2, 'b'], [3, 'c']],运行上述代码后,records会被过滤为[[1, 'a'], [3, 'c']],完全符合移除第二个元素为b的子列表的需求。

内容的提问来源于stack exchange,提问作者Fernando Chueca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 12:24:54