Python 使用while循环处理列表和字典

1、在列表之间移动元素

假设有一个列表包含新注但还未验证的网站用户。验证这些用户后,如果将他们移动到另一个已验证用户列表中呢?一种办法是用一个while循环,在验证用户的同时将其从未验证用户列表中提取出来,再将其加入另一个已验证用户列表中。代码如下:

#首先,创建一个待验证用户列表
#   和一个用于存储已验证用户的空列表。
unconfirmed_users = ['alice','brian','candace']
confirmed_users = []
#验证每个用户,知道没有未验证的用户为止
#   将每个经过验证的用户都移到已验证的用户列表中。
while unconfirmed_users:
    current_user = unconfirmed_users.pop()
    print(f"Verifying user: {current_user.title()}")
    confirmed_users.append(current_user)
print("\nThe following users have been confirmed:")
for confirmed_user in confirmed_users:
    print(confirmed_user.title())

2、删除为特定值的所有列表元素

pets = ['dog','cat','dog','goldfish','cat','rabbit','cat']
print(pets)
while 'cat' in pets:
    pets.remove('cat')
print(pets)

3、使用用户输入来填充字典

responses = {}
#设置一个标志,指出调查是否继续
polling_active = True
while polling_active:
    name = input("\nWhat is your name?")
    response = input("which mountain would you like to climb someday?")
    responses[name] = response
    repeat = input("Would you like to let another person respond?(yes/no)")
    if repeat == 'no':
        polling_active = False
print("\n---Poll Results---")
for name,response in responses.items():
    print(f"{name} would like to climb {response}")

posted @ 2022-05-11 19:19  破忒头头  阅读(218)  评论(0)    收藏  举报