1.列表创建
# 数组: 存储同一种数据类型的集和。scores=[12,95.5] # 列表(打了激素的数组): 可以存储任意数据类型的集和。
li = [1, 1.2, 2j+3, True, "hello"] print(li, type(li))
输出为:[1,1.2,2j+3,Ture,''hello''] class(‘list’)
# 列表里面也是可以嵌套列表的; li1 = [1, 1.2, 2j+3, True, "hello", [1,2,3,4,5]] print(li1, type(li1))
输出为:[1, 1.2, 2j+3, True, "hello", [1,2,3,4,5]] class(‘list’)
2.列表的练习
根据用于指定月份,打印该月份所属的季节。 **提示: 3,4,5 春季 6,7,8 夏季 其他不合法
"""
month = int(input('Month:')) if month in [3, 4, 5]: print("春季") elif month in [6, 7, 8]: print('夏季') else: print("月份不合法")
3.列表联系
names = ['westos', 'fentiao', 'fendai', 'fensi'] Student: westos, fentiao, fendai and fensi. print("Student: " + ",".join(names[:-1]) + ' and ' + names[-1] )
打印结果为第二行所示
4.列表元素的追加
print(services+['firewalld']) service=["1"] 2. append:追加: append是追加一个元素到列表中; services.append('firewalld') print(services)
结果为:["1","firewalld"]
3. extend:拉伸: 追加多个元素到列表中
services.extend(['hello', 'firewalld', 'mysql']
print(services)
结果为:["1",'hello','firewalld','mysql']
4. insert:插入 services.insert(0, 'firewalld') 在第一个元素前插入 print(services)
结果为:['firewalld',"1"]
5.列表的删除
a=['aaa',22,11]
del(a[0])
a=[22,11]
a.remove(22)
a=[11]
6.列表的修改
# 通过索引, 重新赋值
service=["22","11","weew"]
services[0] = 'mysql' 第一个修改
print(services)
输出为:['mysql',"11","wwee"]
通过slice(切片) services[:2] = ['mysql', 'firewalld'] 前两个修改 print(services)
输出为:['mysql','firewalld',"wwee"]
7.列表的查看
# 对字符串排序不区分大小写
""" phones = ['alice', 'bob', 'harry', 'Borry'] phones.sort() 列表中元素的排序 大写在前,小写在后 phones ['Borry', 'alice', 'bob', 'harry'] names.sort(key=str.lower) Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'names' is not defined phones.sort(key=str.lower) 以小写开头 phones ['alice', 'bob', 'Borry', 'harry'] phones.sort(key=str.upper) phones ['alice', 'bob', 'Borry', 'harry']
"""
import random 导入随机数模块 # # 随机生成10个整形数, 范围为1~10之间 numbers = [] 空列表 for i in range(10):
num = random.randint(1,10) num等于1到10之间任意一个随机数
numbers.append(num) numbers等于每一个随机数的累加 print(numbers)
结果为[1,4,5,6,7,8,8,7,2,3] numbers.sort() 由小到大排序 print(numbers)
结果为:[1,2,3,4,5,6,7,7,8,8]
8.用户管理系统
添加用户: 1). 判断用户是否存在? 2). 如果存在, 报错; 3). 如果不存在,添加用户名和密码分别到列表中;
- 删除用户 1). 判断用户名是否存在 2). 如果存在,删除; 3). 如果不存在, 报错; - 用户登陆 - 用户查看 1) 通过索引遍历密码 - 退出
1). 系统里面有多个用户, 用户信息目前保存在列表里面; users = ['root', 'westos'] passwds = ['123', '456'] 2). 用户登陆(判断用户登陆是否成功): 1). 判断用户是否存在?(inuser in users) 2). 如果存在: 1). 判断用户密码是否正确? (先找出用户对应的索引值, 根据passwds[索引值拿出该用户的密码) 如果正确: 登陆成功, 退出循环; 如果密码不正确, 重新登陆, 总共有三次登陆机会 3). 如果不存在: 重新登陆, 总共有三次登陆机会 """ users = ['root', 'westos'] passwds = ['123', '456']
# 尝试登陆的次数 trycount = 0 while trycount < 3: inuser = input("用户名:") inpasswd = input("密码:") # 尝试次数加1 trycount += 1 if inuser in users: # 判断用户密码是否正确? index = users.index(inuser) 先找出用户对应的索引值 passwd = passwds[index] 密码为在密码列表中对应的索引值的密码 if inpasswd == passwd: 如果匹配成功 print("%s登陆成功" %(inuser)) break else: print("%s登陆失败: 密码错误!" %(inuser)) else: print("用户%s不存在" %(inuser)) else: print("已经超过三次机会")
9.管理员查看前台信息
# 1. 后台管理员只有一个用户: admin, 密码: admin # 2. 当管理员登陆成功后, 可以管理前台会员信息. # 3. 会员信息管理包含: # 添加会员信息 # 删除会员信息 # 查看会员信息 # 退出
print("管理员登陆".center(50, '*')) inuser = input('UserName:') inpasswd = input('Password:') # 所有会员用户名 users = ['root', 'westos'] # 所有会员的密码 passwds = ['123', '345']
if inuser == 'admin' and inpasswd == 'admin': print("管理员登陆成功!") print("会员管理".center(50, '*')) while True: print(""" 操作目录 1 - 添加会员信息 2 - 删除会员信息 3 - 查看会员信息 4 - 退出 """) choice = input("请选择你的操作:")
if choice == '1': print("添加会员信息".center(50, '*')) addUser = input("添加会员名:") if addUser in users: print("用户%s已经存在" %(addUser)) else: addPasswd = input("密码:") # 需要把用户和密码添加到列表; users.append(addUser) passwds.append(addPasswd) print("添加用户%s成功" %(addUser)) elif choice == '2': print("删除会员信息".center(50, '*')) delUser = input("删除会员名:") delIndex = users.index(delUser)
passwds.remove(dellindex) users.remove(delUser) print("删除会员%s成功!" %(delUser))
elif choice == '3': print("查看会员信息".center(50, '*')) print("\t用户名\t密码") userCount = len(users) # 2 # 0,1 for i in range(userCount): print('\t%s\t%s' %(users[i], passwds[i])) 打印第i个用户的用户名和密码 elif choice == '4': exit() else: print("请输入正确的选择") else: print("管理员登陆失败!")