7.python列表相关(就是其他语言中的数组)

提示:
python列表相关(就是其他语言中的数组)


请添加图片描述

列表的创建

1.lst=[‘hello’,‘world’,‘98’]
2.lst=list([‘hello’,‘world’,‘98’])
请添加图片描述

列表的查询

元素是否存在与遍历

lst=[10,20,30,40,50,60,70,80,90]
print('p'in'python')
print(10 in lst)
#遍历
for i in lst:
    print(i)

获取指定元素索引

print(lst.index(‘hello’))#0
print(lst.index(‘hello’,1,4))#左闭右开 ValueError: ‘hello’ is not in list

由索引获取单个元素

有正向索引和逆向索引
正向索引:0 ~ N-1
逆向索引:- N ~ -1
不存在抛出索引异常

获取多个元素:切片

请添加图片描述

lst=[10,20,30,40,50,60,70,80,90]
print('yuanliebiao',id(lst))
print(lst[1:8:2],id(lst))#对列表直接切片,id不变
print(lst[::-1])#相当于倒序[90, 80, 70, 60, 50, 40, 30, 20, 10]
print(lst[8::-2])#[90, 70, 50, 30, 10]
print(lst[7:0:-2])#[80, 60, 40, 20]

列表倒序 lst[::-1]

列表的增删改

在这里插入图片描述

lst=[1,2,3]
lst.append(4)#id不变
lst2=['hello','world']
lst.append(lst2)
print(lst)#[1, 2, 3, 4, ['hello', 'world']]lst2作为整体一个元素加入lst中
lst.extend(lst2)
print(lst)#[1, 2, 3, 4, ['hello', 'world'], 'hello', 'world']
lst.insert(1,90)#1的位置上加90
print(lst)#[1, 90, 2, 3, 4, ['hello', 'world'], 'hello', 'world']
lst3=[True,False,'lj']
lst[1:]=lst3
print(lst)#[1, True, False, 'lj']
lst[1:2]=lst3
print(lst)#[1, True, False, 'lj', False, 'lj']注意此处为替换

在这里插入图片描述

lst=[1,2,3,4,5,3,6]
lst.remove(3)#删除指定元素,若指定元素重复,仅删第一个;无该元素报错
print(lst)#[1, 2, 4, 5, 3, 6]
lst.pop(3)#删除指定位置(索引)元素,不存在报错;不指定索引删除最后一个元素
print(lst)#[1, 2, 4, 3, 6]
print(id(lst))
new_lst=lst[1:3]#切片!!!!产生新的列表,原列表不发生改变,实际上就是选取部分元素赋值给新列表
print(lst)#[1, 2, 4, 3, 6]
print(new_lst)#[2, 4]
lst.clear()#清空列表
print(lst)#[]
del(lst)#删除列表
print(lst)#NameError: name 'lst' is not defined

在这里插入图片描述

lst=[1,2,3,4,5,6]
lst[1]=66#指定索引替换
print(lst)#[1, 66, 3, 4, 5, 6]
lst[2:4]=[77,88]#切片
print(lst)#[1, 66, 77, 88, 5, 6]

列表的排序

sort()方法

sort()方法默认升序,从小到大。reverse=False

lst=[1,2,3,4,5]
lst.sort()#升序
lst.sort(reverse=True)#降序

内置函数sorted()

与sort()区别在,内置函数生成新的列表对象

lst=[1,2,3,4,5]
new_lst1=sorted(lst)#升序
print(new_lst1)
new_lst2=sorted(lst,reverse=True)
print(new_lst2)

列表生成式

i*i for i in range(1,10)

lst=[i for i in range(1,11)]
print(lst)#[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
#输出偶数
lst2=[i*2 for i in range(1,6)]
print(lst2)#[2, 4, 6, 8, 10]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心灵排骨汤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值