python入门问题
问题是在读取列表的时候不区分大小写,就是说只要两个列表中元素大小写相等就要排除,原题如下:
创建一个至少包含5个用户名的列表,并将其命名为 current_users
再创建一个包含5个用户名的列表,将其命名为 new_users,并确保其中有一个两个用户名也包含在列表 current_users中
遍历列表 new_users,对于其中的每个用户名,都检查它是否已被使用。 如果是,就打印一条消息,指出需要输入别的用户名;否则,打印一条消息,指出这个用户名未被使用。
确保比较时不区分大小写。 换句话说,如果用户名‘John’已被使用,应拒绝用户名‘JOHN’
我做的是这样的:
current_users = ['WANGBING','zhaosi','admin','litian','bin','qingtian']
current_users1 = []
for current_user in current_users:
current_users1.append(current_user.upper())
new_users = ['zhaosi','wangbing','lixiang','zhangning','LITIAN']
for new_user in new_users:
if new_user.upper() in current_users1:
print('you need to write anther name')
else:
print('you can use it for name.')
我在练习前做了一个副本储存大写信息,方便之后比较
网上做的:
```python
current_users = ['li','lo','lu','ly','ln']
new_users =['li','lo','km','kl','kh']
for user in new_users:
if user.lower() in [current_user.lower() for current_user in current_users]:
print('该用户名已被使用,请输入别的用户名')
else:
print('该用户名未被使用')
我想知道 if语句中是啥意思,为什么大写和遍历能同时进行不报错,还有我做的行不行,做副本肯定是增加成本了,还有其他我能看懂的方法嘛?