列表:
1.创建:
#a.使用中括号
lst=['hello','world',98]
#b.使用内置函数list()
lst=list(['hello','world',98])
2.特点:
#2.特点
#索引是从0开始,内存分配是一样的
print(lst)
print(lst[0],lst[2])
3.获取指定元素的索引(索引从0开始,不包括最后一个):
#3.获取指定元素的索引
lst=['hello','world',98,'hello']
print(lst.index('hello')) #如果列表中有相同元素,只返回第一个元素的索引
print(lst.index('hello',1,4)) #从第一个到第三个元素
4.获取列表中的单个元素:
#4.获取列表中的单个元素
lst=['hello','world',1213,45.65]
print(lst[2]) #获取索引为2的元素
print(lst[-3]) #获取索引为-3的元素,最后一位索引为-1
5. 获取列表中的多个元素:
#5.获取列表中的多个元素---切片操作
#列表名[start:stop:step] 不包含stop
lst=[10,20,30,40,50,60,70,80]
print(lst[1:6:])# 最后一位是步长,特别的,step没有则默认步长为1
print(lst[1:6:2])
print(lst[:6:2])# start没有则默认为从索引为0开始
print(lst[1::2])# stop没有则默认执行到最后一位
print(lst[::-1])# step为负数的情况下则默认从后往前执行
print(lst[7::-1])
6.列表元素的查询和遍历:
#6.列表元素的查询和遍历操作
lst=['hello','world',92,87.232]
print(92 in lst) #查询92是否存在于列表
print(10 not in lst) #查询10是否存在于列表
for i in lst:
print(i,end='\t') # 遍历元素
print()
7.列表元素的添加:
#7.添加元素
# append 在列表的末尾添加一个元素
lst=[10,20,30]
print('添加元素之前为',lst,id(lst))
lst.append(100)
print('添加元素之后为',lst,id(lst))
#extend 在列表的末尾添加多个元素
lst1=['hello','world',123.456]
lst.extend(lst1)
print(lst)
# insert在任意位置添加1个元素
lst.insert(1,90) #在索引为1的位置添加90
print(lst)
#切片操作 在任意位置添加多个元素
lst3=['true','false',222]
lst[1:]=lst3 #从第一个位置到最后替换成lst3
print(lst)
8.列表元素的删除:
#8.删除元素
#remove只移除一个元素
lst=[10,20,30,40,50,60,30]
lst.remove(30) #从列表中移除30这个元素,重复只删除第一个
print(lst)
#pop根据索引移除元素,如果不固定,则删除最后一个元素
lst.pop(1)
print(lst)
lst.pop()
print(lst)
#切片一次切多个元素,将产生一个新的列表对象
new_list=lst[1:3] #切片不包括最后一项
print(new_list)
#如果不产生新的列表对象,而是删除原列表中的内容
lst[1:3:]=[]
print(lst)
#clear清除列表中的所有元素
lst.clear()
print(lst)
#del 直接删除列表对象
del lst
print(lst)
9.列表元素的修改:
#9.修改元素
lst=[10,20,30,40]
lst[2]=100
print(lst)
lst[1:3]=[300,400,500,600] #替换之间的元素
print(lst)
10. 列表元素的排序:
#10.列表元素的排序
lst=[20,40,10,98,54]
lst.sort() #升序排序
print(lst)
lst.sort(reverse=True) #reverse=True表示降序排序,reverse=False则表示升序
print(lst)
new_lst=sorted(lst) #升序排序
print(new_lst)
new_lst2=sorted(lst,reverse=True) #reverse=True表示降序排序,reverse=False则表示升序
print(new_lst2)
11.列表生成式:
#11.列表生成式:生成列表的公式
lst=[i*i for i in range(1,10)]
print(lst)
#列表中的元素为 2 4 6 8 10
lst1=[i*2 for i in range(1,6)]
print(lst1)