#list列表取值更方便灵活 列表、数组说的都是1个东西
#列表中每个字符都有一个编号,就是我们说的下标,从0开始
#如果你输入的下标在列表中不存在,会报下标越界的错误
1、查询user表中下标为0的记录
user=['王春武','于萍','李丹利','李梦']
#查询user表中下标为0的记录
print(user[0]) # 查询结果为王春武
print(user[-1])#查询结果为李梦,-1是取最后1个值
2、空列表,什么都没有,如何添加值
#1、insert 和 append的区别:insert个可以指定下标位置添加元素,append是在列表末尾添加元素
cities=[]
cities.append('北京') #['北京']
cities.insert(2,'English') #['北京', 'English']
print(cities)
3、删除元素
cities=['北京','上海','南京','济南']
cities.pop(0) #传下标删除
cities.remove('上海') #传元素删除
print(cities) #['南京', '济南']
4、清空
#清空
cities=['北京','上海','南京','济南']
cities.clear()
print(cities) #[]
5、#修改:指定下标修改
cities=['北京','上海','南京','济南']
cities[0]='开封'
print(cities)
结果:['开封', '上海', '南京', '济南']
6、
#获取对应下标的元素
cities=['北京','上海','南京','济南']
print(cities[0])
#结果:北京
#获取对应元素的下标
print(cities.index('上海'))
#结果:1
7、#查询元素在列表里出现了多少次
cities=['北京','上海','南京','济南']
print(cities.count('北京'))
结果:1
8、#反转
cities=['北京','上海','南京','济南']
print(cities.reverse()) #返转
print(cities)
9、#排序
nums=[1,2,3,4,5,6,7]
#nums.sort()
#nums.sort(reverse=True) #结果:[7, 6, 5, 4, 3, 2, 1]
nums.sort(reverse=False) #结果:[1, 2, 3, 4, 5, 6, 7]
print(nums)
10、#合并list
cities=['开封','商丘','北京','郑州']
cities1=['天津','蒙夏','宁夏','甘肃']
print(cities+cities1)
结果:['开封', '商丘', '北京', '郑州', '天津', '蒙夏', '宁夏', '甘肃']
#print(cities*2) ['开封', '商丘', '北京', '郑州', '开封', '商丘', '北京', '郑州']
#乘法,乘几次就复制几次
列表小练习
#校验用户名是否合法的小练习(注册)
#1、输入用户名 input;
#2、如果用户名不在2到12位间弹出提示信息:长度不符合要求 len
#3、如果用户名存在数据库,提示用户名已存在
#4、如果用户名不存在数据库,成功注册
#5、循环输入5次
#6、用户名不能为空,其实已经判断了长度,可以不加用户名为空的判断;
#先校验长度,因为长度不需要去数据查询,性能优化,节省与数据库的交互
user=['于萍','李丹利','李梦','王春武']
for i in range(5):
username=input('请输入你的用户名:').strip()
if len(username)>1 and len(username)<12:
if user.count(username) > 0:#拿着username去user列表中找,如果>0证明存在在列表中
print('用户名已存在')
else:
print('请注册用户')
break
else:
print('长度不符合要求')
#列表合并
a=[]
b=["no,i can't it i have a lot of work!"]
a.append('can you help me')
a.extend(b)
print(a)
结果:['can you help me', "no,i can't it i have a lot of work!"]
#列表合并-两种方式都可以
a=[]
b=["no,i can't it i have a lot of work!"]
a.append('can you help me')
print(a+b)