我需要比较2个列表[new_user]和[current_user],并验证新用户是否已在当前用户中(不区分大小写)
current_users = ['john', 'anne', 'matthew', 'yennefer', 'tony']
new_users = ['paul', 'frank', 'carl', 'nana', 'JOHN']
current_users.extend(new_users[0:2])
lower_user = []
for new_user in new_users:
lower_user.append(new_user.lower())
if lower_user in current_users:
print("Name unavaible, " + str(new_user))
else:
print("Name available, " + str(new_user))
Actually, that's the output:
Name available, paul
Name available, frank
Name available, carl
Name available, nana
Name available, JOHN
JOHN可用,因此不起作用。我该怎么办?
在您的代码中,您的if语句基本上是说list lower_user
是否在列表current_users
中,然后执行某些操作。相反,您想查看先前在lower_user
中附加的结果是否在current_users
中。通过将索引[-1]
添加到lower_user
列表来执行此操作。
current_users = ['john', 'anne', 'matthew', 'yennefer', 'tony']
new_users = ['paul', 'frank', 'carl', 'nana', 'JOHN']
current_users.extend(new_users[0:2])
lower_user = []
for new_user in new_users:
lower_user.append(new_user.lower())
if lower_user[-1] in current_users:
print("Name unavailable, " + str(new_user))
else:
print("Name available, " + str(new_user))
这提供了输出:
Name unavailable, paul
Name unavailable, frank
Name available, carl
Name available, nana
Name unavailable, JOHN
如果这是预期的输出,那就好。如果没有,请提供预期的输出。