一、列表练习题目
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))
执行效果: