循环改变列表,不能使用for,应该使用while

# 循环改变列表,不要使用for 应该使用while
# 定义二个列表,目标是将old_names列表的内容循环挪到new_names列表里。

old_names = ['张三', '李四', '王五']
new_names = []

# 1.错误的使用for 循环

for name in old_names:
     pop_name = old_names.pop()
     print(pop_name)
new_names.append(pop_name)
print(new_names)

程序运行结果为:

王五
李四
['王五', '李四']

张三没有挪到new_names列表中,显然不是我们要的结果

# 2.正确的做法是使用while循环改变列表

while old_names:
     pop_name = old_names.pop()
     print(pop_name)
     new_names.append(pop_name)
print(new_names)

程序运行结果为:

王五
李四
张三
['王五', '李四', '张三']

这显然才是我们要的结果,综上,如果需要循环改变列表,请使用while

原文地址:https://www.cnblogs.com/cxyrj/p/13782230.html