Python for循环删除列表元素时,如何确保删除彻底?

2026-05-21 17:223阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计220个文字,预计阅读时间需要1分钟。

Python for循环删除列表元素时,如何确保删除彻底?

python指针问题 + remove 第一次:a=[1, 2, 3, 4, 5] -> a=1第二次:a=[2, 3, 4, 5] -> 指针发生变法 i=3同理第三次:i=5data=[1, 2, 3, 4, 5]for i in data: data.remove(i)print(data)打印结果为:[2, 4, 6]解决方案:data=[1, 2, 3, 4, 5]for i in range(len(data)): data.remove(data[i])print(data)


指针问题 remove 第一次:a=[1,2,3,4,5]->a=1 第二次:a=[2,3,4,5]->指针发生变法i=3 同理第三次i=5

data = [1, 2, 3, 4, 5]
for i in data:
data.remove(i)

print(data)

打印结果为:[2, 4, 6]

解决方式 用新的列表代替旧的列表 进行删除操作

from copy import deepcopy

data = [1,2,3,4,5]
old_list = data
new_list = deepcopy(old_list)
for i in old_list:
new_list.remove(i)

print(new_list)

打印结果为:[]

Python for循环删除列表元素时,如何确保删除彻底?

本文共计220个文字,预计阅读时间需要1分钟。

Python for循环删除列表元素时,如何确保删除彻底?

python指针问题 + remove 第一次:a=[1, 2, 3, 4, 5] -> a=1第二次:a=[2, 3, 4, 5] -> 指针发生变法 i=3同理第三次:i=5data=[1, 2, 3, 4, 5]for i in data: data.remove(i)print(data)打印结果为:[2, 4, 6]解决方案:data=[1, 2, 3, 4, 5]for i in range(len(data)): data.remove(data[i])print(data)


指针问题 remove 第一次:a=[1,2,3,4,5]->a=1 第二次:a=[2,3,4,5]->指针发生变法i=3 同理第三次i=5

data = [1, 2, 3, 4, 5]
for i in data:
data.remove(i)

print(data)

打印结果为:[2, 4, 6]

解决方式 用新的列表代替旧的列表 进行删除操作

from copy import deepcopy

data = [1,2,3,4,5]
old_list = data
new_list = deepcopy(old_list)
for i in old_list:
new_list.remove(i)

print(new_list)

打印结果为:[]

Python for循环删除列表元素时,如何确保删除彻底?