Python学习小记2-检查用户名

题目1.0:

按下面的说明编写一个程序,模拟网站如何确保每位用户的用户名都独一无二。
(1)创建一个至少包含5个用户名的列表,并将其命名为 current_users
(2)再创建一个包含5个用户名的列表,将其命名为new_users ,并确保其中有一两个用户名也包含在列表current_users 中。
(3)遍历列表new_users ,对于其中的每个用户名,都检查它是否已被使用。如果是,就打印一条消息,指出需要输入别的用户名;否则,打印一条消息,指出这个用户名未被使用。
current_users = ["Daisy", "Karen", "Lucy", "Alice", "Helen", "Rachel"]
new_users = ["Mia", "Sarah", "Winter", "Daisy", "LUCY", "Vivian"]
if new_users:
    # for i in new_users:   # 遍历的是元素的副本,无法修改原列表的值(得到的i是列表中的实际元素,而不是它们的索引)
    for i in range(len(new_users)):   # 遍历的是索引,可以通过索引直接修改原列表的值
        user = new_users[i]
        if user in current_users:
            print("该用户名已被使用,请输入别的用户名:")
            new_user = input()
            new_users[i] = new_user  # 修改列表中的用户名
        else:
            print("该用户名没有被使用~~~~")

print(new_users)

题目2.0:

(4)确保比较时不区分大小写。换句话说,如果用户名'John' 已被使用,应拒绝用户名'JOHN' 。(为此,需要创建列表current_users 的副本,其中包含当前所有用户名的小写版本。)

思路

把两个列表都变成小写,再进行比较,一样的话就是重复了,被使用了,就应该提示被使用。

即--创建current_users的小写版本,遍历new_user的每一个小写元素,进行对比。

current_users = ["Daisy", "Karen", "Lucy", "Alice", "Helen", "Rachel"]
new_users = ["Mia", "Sarah", "Winter", "Daisy", "LUCY", "Vivian"]
# 创建 current_users 的小写版本:遍历 current_users 列表,并对每个元素(user)应用小写操作,最后生成一个新的列表。
lower_current_users = [user.lower() for user in current_users]
if new_users:
    for i in range(len(new_users)):
        user = new_users[i]
        # 将 new_users 中的每个用户名转换为小写,和lower_current_users比较,是为了保证比较时不区分大小写
        if user.lower() in lower_current_users:
            print("该用户名已被使用,请输入别的用户名:")
            new_user = input()
            new_users[i] = new_user  # 修改列表中的用户名
        else:
            print("该用户名没有被使用~~~~")

print(new_users)

总结:

1.一般进行列表遍历,都是使用下标来遍历,通过索引直接修改其值

2. 列表名.lower() 转为小写

3. 列表推导式

lower_current_users = [user.lower() for user in current_users]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值