20220312-day1:循环过程中对数据进行删除会报错,解决方案

# 错误方式, 有坑,结果不是你想要的。

user_list = ["刘的话", "范德彪", "刘华强", '刘尼古拉斯赵四', "宋小宝", "刘能"]
for item in user_list:
    if item.startswith("刘"):
        user_list.remove(item)
        
print(user_list)

# 列表的删除后位置索引会变更,所以可以倒叙删除,确保位置不会变更

 

# 正确方式,倒着删除。
user_list = ["刘的话", "范德彪", "刘华强", '刘尼古拉斯赵四', "宋小宝", "刘能"]
for index in range(len(user_list) - 1, -1, -1):
    item = user_list[index]
    if item.startswith("刘"):
        user_list.remove(item)
print(user_list)

posted @ 2022-03-16 09:59  美丽小鱼  阅读(14)  评论(0)    收藏  举报