Python之巩固小练习(列表、集合)

一、列表练习题目

1、

假定有下面的列表:
names = [‘fentiao’,‘fendai’,‘fensi’,‘apple’]
输出结果为: ‘I have fentiao, fendai, fensi and apple.’

代码实现:

names = ['fentiao','fendai','fensi','apple']
print('I have ' + ','.join(names[:-1])+ ' and ' + names[-1])		#','.join为字符串的连接。

在这里插入图片描述

2、用户登录系统

需求:

1.系统里面有多个用户,用户的信息目前保存在列表里面
    users = ['root','redhat']
    passwd = ['123','456']
2.用户登陆(判断用户登陆是否成功
    1).判断用户是否存在
    2).如果存在
        1).判断用户密码是否正确
        如果正确,登陆成功,推出循环
        如果密码不正确,重新登陆,总共有三次机会登陆
    3).如果用户不存在
    重新登陆,总共有三次机会

代码实现:

users = ['root','redhat']
passwd = ['123','456']

count = 0
while count <= 2:
    count += 1
    Username = input('请输入用户名:')
    Passwd = input('请输入%s用户的密码:'%Username)
    if Username in users:
        u = int(users.index(Username))
        p = passwd[u]
        if p == Passwd:
            print('%s登录成功'%Username)
            break
        else:
            if count == 3:
                continue
            print('密码不正确,请重新登录,你还有%s次机会!'%(3-count))
    else:
        if count == 3:
            continue
        print('该用户不存在,请重新输入用户名及密码,你还有%s次机会!'%(3-count))
else:
    print('尝试超过三次,请稍后再试')

执行效果:
在这里插入图片描述

三、管理会员信息

需求:

1.后台管理员用户只有一个 用户:admin 密码:admin
2.管理员登录成功后,才能管理会员信息
3.会员信息包含:
        添加会员信息
        删除会员信息
        查看会员信息
        退出

代码示例:

print('管理员登录'.center(50,'*'))
inuser = input('Username:')
inpasswd = input('Password:')

users = ['root','linux']

passwords = ['123','456']

if inuser == 'admin' and inpasswd == 'admin':
    while True:
        print("""
            操作目录
        1. 添加会员信息
        2. 删除会员信息
        3. 查看会员信息
        4. 退出
        """)

        choice = input('请输入您的选择:')
        print('#########################')
        if choice == '1':
            Adduser = input('请输入添加的会员帐号:')
            if Adduser in users:
                print('该会员帐号已经存在,请检查后再添加!')
            else:
                users.append(Adduser)
                Addpasswd = input('请添加%s帐号的密码'%Adduser)
                passwords.append(Addpasswd)
                print('%s会员已经添加成功。'%Adduser)
        elif choice == '2':
            Deluser = input('请输入您要删除的会员帐号信息:')
            if Deluser in users:
                u = users.index(Deluser)
                users.remove(Deluser)
                p = passwords[u]
                passwords.remove(p)
                print('%s会员帐号删除成功!'%Deluser)
            else:
                print('%s会员帐号不存在,删除失败!')
        elif choice == '3':
            for u,p in zip(users,passwords):
                print('%s会员帐号的密码: %s'%(u,p))
        elif choice == '4':
            print('谢谢使用!!!')
            exit()
        else:
            print('你的选择不在操作目录,请重新输入')
else:
    print('管理员帐号或密码错误,请稍后再试!')

执行效果:
在这里插入图片描述
在这里插入图片描述

二、集合练习题目

需求:

    明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性
他先用计算机生成了N个1~1000之间的随机整数(N<=1000),N是用户输>入的,对于
其中重复的数字,只保留一个,把其余相同的数字去掉,不同的数对应
着不同的学生的学号,然后再把这些
数从小到大排序,按照排好的顺序去找同学做调查,请你协助明明完成
“去重”与排序工作

代码实现:

import random

Num = int(input('请输入您想生成多少个随机数(N<=1000):'))
list = ([])

for i in range(1,Num+1):
    S = random.randint(1,1000)
    list.append(S)
a = sorted(list)
print(set(a))

执行效果:
在这里插入图片描述

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值