#《Python编程从入门到实践》,动手试一试,5-10检查用户名,答案。2023-07-15,by qs。
current_users = ['AaA','bBb','CcC','DdD','EeE']
new_users = ['AAA','bbb','abc','def','hij']
for new_user in new_users:
current_users_1 = []
for current_user in current_users:
current_users_1.append(current_user.lower())
if new_user.lower() in current_users_1:
print(new_user + '已经被占用,不能注册。')
else:
print(new_user + '可以注册。')
Python编程从入门到实践_5-10 检查用户名_答案
由于本书到这里没有介绍过 break 语句,所以以上代码没有使用 break 语句。
昨天晚上发布的以上版本。今天早上突然想起,以上版本在第一个 for 循环 for new_user in new_users: 中新建了空白列表 current_users_1 。第一个 for 循环 for new_user in new_users: 需要运行5次,每次都要新建空白列表 current_users_1 。增加了程序运行的时间,降低了效率。应该把新建空白列表 current_users_1 的步骤提前到第一 for 循环 for new_user in new_users: 之前,这样整个程序的运行期间只建立一次列表 current_users_1 ,可以提高程序的运行效率。修改如下:
#《Python编程从入门到实践》,动手试一试,5-10检查用户名,答案。2023-07-15,by qs。
current_users = ['AaA','bBb','CcC','DdD','EeE']
new_users = ['AAA','bbb','abc','def','hij']
current_users_1 = []
for current_user in current_users:
current_users_1.append(current_user.lower())
for new_user in new_users:
if new_user.lower() in current_users_1:
print(new_user + '已经被占用,不能注册。')
else:
print(new_user + '可以注册。')
运行结果如下: