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("管理员登陆失败!")