Python3报错TypeError: 'int' object does not support item deletion如何解决
报错原因
- 你在
for q in fnn循环中拿到的q是fnn列表里的单个int类型元素,不是列表本身,对int类型执行del q[i]的删除操作自然会触发类型错误。 - 删除列表首元素的需求不需要写循环,直接操作列表对象即可。
修复方案
根据你的需求可以选择以下任意一种实现:
方案1:用del直接删除列表指定索引元素
fn = 10534 sn = 67 tn = 1120 fnn = [int(x) for x in str(fn)] # 直接删除fnn列表索引为0的第一个元素 del fnn[0] print(fnn)
方案2:用pop方法删除首元素
如果需要拿到被删除的首元素值可以用这个方法:
fn = 10534 sn = 67 tn = 1120 fnn = [int(x) for x in str(fn)] deleted_val = fnn.pop(0) print("被删除的首元素:", deleted_val) print("处理后的列表:", fnn)
方案3:切片生成新列表(不修改原列表)
如果需要保留原列表,直接截取从第二个元素开始的所有内容生成新列表:
fn = 10534 sn = 67 tn = 1120 fnn = [int(x) for x in str(fn)] new_fnn = fnn[1:] print("原列表:", fnn) print("删除首元素后的新列表:", new_fnn)
内容的提问来源于stack exchange,提问作者Learn377
相关产品推荐
相关产品推荐

