python中for循环里去修改列表注意的事项

  你的微信好友当中有 5 个推销的,他们存在一个列表
# black_list=['卖茶叶', '卖面膜', '卖保险', '卖花生', '卖手机']
#  当中, 请把这 5 个人分别从 black_list 当中删除,最后 black_list 为空

black_list=['卖茶叶', '卖面膜', '卖保险', '卖花生', '卖手机']


# 方法一:使用whlie循环,每次删除列表中的第一个,当列表删除到最后为空的时候,程序终止
# while True:
#     black_list.pop(0)
#     print(black_list)
#     if black_list==[]:
#         break
# 方法二:使用for循环,依次删除列表中的第一个,但是每次删除一个元素的时候,列表就不是原来的列表,所以一定要复制,使用切片
for i in black_list[:]:
    black_list.pop(0)
    print(black_list)
# 总结:for循环里去修改列表复
# 以后千万不要在for循环里修改列表,如果要修改,一定要复制,使用切片或者copy