python list 列表

python list 列表
列表是一个可变的链表结构体,可变代表着不可hash
CRUD(创建,读,更新,删除)
和元组一样,多了一些特殊的方法

1,创建
2,读 (索引,切片)
3,更新 (插入,末尾添加(append vs extend))
4,删除 (按索引删除,按值删除,清空)
5,特殊方法 (拷贝,翻转,排序)

1,创建

userinfo1=[1,"zhangsan",18,"sales"]
print(userinfo1)
userinfo2=[]
print(userinfo2)
userinfo3=list((1,2,3,4,5))
print(userinfo3)

[1, ‘zhangsan’, 18, ‘sales’]
[]
[1, 2, 3, 4, 5]
2,读 (索引,切片)
#按照索引读取值,从左到右,或者从右到左

userinfo1=[1,"zhangsan",18,"sales"]
print(userinfo1[2])
print(userinfo1[3])

18
sales
#按照切片读,格式 userinfo1[start🔚step],start,end可以省略,step默认是1

list=[1,2,3,4,5,6,7,8,9,10]
print(list[1:3])  #start=1  end=3 step=1(默认)  前开后闭

[2, 3]

list=[1,2,3,4,5,6,7,8,9,10]
print(list[1:9:2])  #start=1  end=10 step=2 前开后闭

[2, 4, 6, 8]

list=[1,2,3,4,5,6,7,8,9,10]
print(list[:9:2])  #start=0(默认)  end=9 step=2 前开后闭

[1, 3, 5, 7, 9]

list=[1,2,3,4,5,6,7,8,9,10]
print(list[1::2])  #start=1  end=缺省为最后 step=2 

[2, 4, 6, 8, 10]
3,更新
#末尾添加 append 添加的作为一个整体

list=[1,2,3,4,5]
list.append([5,6,7,8])  #在列表末尾添加,作为一个整体添加
print(list)

[1, 2, 3, 4, 5, [5, 6, 7, 8]]
#末尾添加 extend 扩展后合并

list=[1,2,3,4,5]
list.extend([5,6,7,8])  #在列表末尾添加,转换成列表后合并到原来的列表中
print(list)

[1, 2, 3, 4, 5, 5, 6, 7, 8]
#中间插入 (实际应用中比较不推荐,列表为链表结构,虽然能插入,但是成本很高)

list=[1,2,3,4,5]
list.insert(2,"hello")  #在index为2的位置添加,然后后面的数据往后移
print(list)

[1, 2, ‘hello’, 3, 4, 5]
4,删除 (按索引/值删除)
#按索引删除

list=[1,2,3,4,5]
list.pop()   #默认index=-1,为删除最后的那个
print(list)
list.pop(0)  #可以指定删除的index
print(list)

[1, 2, 3, 4]
[2, 3, 4]
#按值删除

list=[1,2,3,4,5,1]
list.remove(2)  #删除值=2的值
print(list)
list.remove(1)  #删除值=1的值,如果有重复的,则删除第一次匹配的
print(list)

[1, 3, 4, 5, 1]
[3, 4, 5, 1]
#清空 clear

list=[1,2,3,4,5]
list.clear()   #清空列表中所有数据 
print(list)

[]
5,特殊方法 拷贝,翻转,排序
#拷贝 将某一个列表复制后给另外的列表

list1=[1,2,3,4,5]
list2=list1.copy()
print(list2)

[1, 2, 3, 4, 5]
#翻转

list1=[1,2,3,4,5]
list1.reverse()   #将列表翻转,列表实际发生了变化
print(list1)

[5, 4, 3, 2, 1]
#排序 注意:排序的列表中间只能是同类型的数据
#默认升序排列

list1=[1,2,3,4,5,1,6]
list1.sort()    #排序,默认升序排列
print(list1)

[1, 1, 2, 3, 4, 5, 6]
#修改成降序排列

list1=[1,2,3,4,5,1,6]
list1.sort(reverse=True)
print(list1)

[6, 5, 4, 3, 2, 1, 1]

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值