7.3 使用while 循环来处理列表和字典
要记录大量的 用户和信息,需要在while 循环中使用列表和字典。 for 循环是一种遍历列表的有效方式,但在for 循环中不应修改列表,
要在遍历列表的同时对其进行修改,可使用while 循环。通过 将while 循环同列表和字典结合起来使用,可收集、存储并组织大量输入,供以后查看和显示。
7.3.1 在列表之间移动元素
假设有一个列表,其中包含新注册但还未验证的网站用户;验证这些用户后,如何将他们移到另一个已验证用户列表中呢?一种办法是使用一个while 循环,在验证用户的同时 将其从未验证用户列表中提取出来,再将其加入到另一个已验证用户列表中。
7.3.2 删除包含特定值的所有列表元素
假设你有一个宠物列表,其中包含多个值为'cat' 的元素。要删除所有这些元素,可不断运行一个while 循环,直到列表中不再包含值'cat' ,
7.3.3 使用用户输入来填充字典 可使用while循环提示用户输入任意数量的信息。下面来创建一个调查程序,其中的循环每次执行时都提示输入被调查者的名字和回答。我们将收集的数据存储在一个字典中,以 便将回答同被调查者关联起来:
这个程序首先定义了一个空字典(responses ),并设置了一个标志(polling_active ),用于指出调查是否继续。只要polling_active 为True ,Python就运 行while 循环中的代码。 在这个循环中,提示用户输入其用户名及其喜欢爬哪座山。将这些信息存储在字典responses 中,然后询问用户调查是否继续。如果用户输入yes ,程序将再次进入while 循环;如果用户输入no ,标志polling_active 将被设置为False ,而while 循环将就此结束。最后一个代码块显示调查结果。