1760字,让你拿捏 [‘列表‘]

简介: 1760字,让你拿捏 [‘列表‘]

如约而至,紧接着第一篇文章,小编将会陆续把自己精心做的全套Python笔记依次发放给大家,便于大家学习Python、期末备考、巩固基础等


(这几期是公众号小插曲,后期发放编程技术的话主要还是会围绕Java来展开,感谢小伙伴们的支持~)


列表

变量可以存储一个元素,而列表是一个大容器,可以存储N多个元素,程序可以方便地对这些数据进行整体操作


列表相当于其它语言中的数组


变量存储的是一个对象的引用,而列表存储的是多个对象的引用


列表的创建用 [] 或者内置函数list()创建


元素之间用,分割


列表元素按顺序有序培训


索引映射唯一一个数据


列表可以存储重复元素


任意类型混存


根据需要动态分配和回收内存


和java不同的是:从后往前采用的是负数索引比如第一个0的索引,它同时也是负数最后一个索引,java索引从0开始,无负数


如果列表中有多个元素,只返回列表中相同元素第一个元素的索引


在指定索引进行查找:

lst=['hello','world','99','hello']print(lst.index('hello',1,3)) #1-3不包括3,这里会报错找不到索引

获取列表中的多个元素

语法格式


列表名[start : stop : step]


切片的结果:原列表片段的拷贝


切片的范围,[start,stop)


step默认为1,简写为[stop,step]

lst=[10,20,30,40,50,60,70,80]print('原列表',id(lst))# 原列表 3184358125248lst2=lst[1:6:1]print('切的片段:',id(lst2))# 切的片段: 3184361791744print(lst[1:6]) # 默认步长为1  [20, 30, 40, 50, 60]print(lst[1:6:])# [20, 30, 40, 50, 60]print(lst[1:6:2]) # [20, 40, 60]print(lst[:6:2])  # [10, 30, 50]print(lst[1::2])  # [20, 40, 60, 80]print('----------step步长为负数的情况-----------------')print(lst[::-1])  # [80, 70, 60, 50, 40, 30, 20, 10] print(lst[6:0:-2])# [70, 50, 30]

列表元素的判断及遍历

for 迭代变量 in 列表名:


操作


print(10 in lst) #True


print(10 not in lst) #False


遍历


for item in lst:


print(item)

列表元素的增删改操作

增加


append():在列表的末尾添加一个元素


extend():在列表的末尾至少添加一个元素


insert():在列表的任意位置添加一个元素


切片:在列表的任意位置添加至少一个元素


id没变说明,append是在同一个列表中添加元素,每一个元素的id不同,但这个列表的id不变

lst=[10,20,30]print('添加元素之前',lst,id(lst)) lst.append(40)print('添加元素之后',lst,id(lst)) #添加元素之后 [10, 20, 30, 40]

将lst2作为一个元素添加到lst1的末尾

lst2=['hello','world']lst.append(lst2)print(lst) #[10, 20, 30, 40, ['hello', 'world']]

用extend()添加列表

lst2=['hello','world']lst.extend(lst2)print(lst)

在任意位置上添加一个元素


lst = [10,20,30]


lst.insert(1,90)


print(lst) #[10, 90, 20, 30, 40]


切片

lst.insert(1,90)print(lst) # [10, 20, 30, 40]lst3=[True,False,'hello'] # [10, 90, 20, 30, 40]lst[1:]=lst3print(lst) # [10, True, False, 'hello']

列表元素的删除操作


remove():一次删除一个元素


重复元素只删除第一个


元素不存在抛出ValueError


pop() :删除一个指定索引位置上的元素


指定索引不存在抛出IndexError


不指定索引,删除列表中最后一个元素


切片:一次至少删除一个元素


clear():清空列表


del:删除列表

lst=[10,40,50,60]new_list=lst[1:3]print('原列表:',lst) # 原列表:[10, 40, 50, 60]print('切片后的列表:',new_list) # 切片后的列表:[40, 50]#不产生原列表中的对象,而是删除原列表中的内容lst[1:3]=[]print(lst) # [10, 60]del lstprint(lst) # name 'lst' is not defined  既然删除了,那么就没有定义

列表元素的排序操作

常见的两种方式:


调用sort()方法,列表中所有元素默认按照从大到小顺序进行排序,指定reverse=True,进行降序排序,默认是False


调用内置函数sorted(),可以指定reverse=True,进行降序排序,原列表不发生改变,id不会变


sort()是对原列表进行排序,sorted()是对新列表进行排序


列表生成式


列表生成式简称 生成列表的公式


语法格式:[ i * i for i in range(1,10) ]


i * i 表示列表元素的表达式,自定义, for后面的 i 表示自定义变量,range(1,10)表示可迭代对象

lst=[i for i in range(1,10)] #会产生一个1-9的整数序列,# 可以用[]括起来,这个列表中存的是产生的整数序列,产生的整数序列是i,所以在for之前加上iprint(lst) #[1, 2, 3, 4, 5, 6, 7, 8, 9]


往期回顾


小白进阶必备入门~从Python安装->分支结构


微信公众号:索奇之家

索奇之家:探索各类互联网技术~ 优先发放java技术、其它编程语言技术、源代码、软件资料、数码迷惑、以及一些网络小技巧……Welcome home~


相关文章
|
2月前
|
弹性计算 安全 关系型数据库
用100字写一个阿里云应用的例子
用户张三利用阿里云的ECS部署了他的在线电商网站,并结合RDS存储商品与用户信息,OSS存放产品图片及宣传资料,通过CDN提升全球访问速度,SLB确保网站高可用性,云盾保障整体安全,构建了一个稳定、高效且安全的在线购物平台。
|
3月前
|
Serverless 网络安全 API
函数计算产品使用问题之遇到无法处理艺术字请求,该怎么办
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
5月前
春晚刘谦第二个魔术原理讲解
春晚刘谦第二个魔术原理讲解
51 2
|
API C语言 Windows
节空白区添加自己的代码【滴水逆向44笔记】
节空白区添加自己的代码【滴水逆向44笔记】
|
存储 机器学习/深度学习
二叉树详解一万字(基础版)看着一篇就够了(上))
树的结构是一种非线性的数据结构,它是由n(n>=0)个节点组成的一个有层次的关系集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说他是根朝上,而叶朝下。
121 0
|
算法 数据安全/隐私保护
软考加密类型题(7个历年类型题【答案在底部】选择题1分必得)
对称秘钥算法也叫:私钥、私有秘钥、共享秘钥。 非对称秘钥算法也叫:公钥、公开秘钥、数字签名。 还有消息摘要加密:MD5
246 0
软考加密类型题(7个历年类型题【答案在底部】选择题1分必得)
|
前端开发 JavaScript
前端工作总结97-修改省略号
前端工作总结97-修改省略号
93 0
前端工作总结97-修改省略号
部落是一个魔法部落,部落中一共有n+1个人,小Biu是魔法部落中最菜的,所以他的魔力值为1,魔法部落中n个人的魔法值都不相同,第一个人的魔法值是小Biu的3倍,第二个人的魔法值是第一个人的3倍,以此类推。 现在小Biu想知道整个部落的魔法值和是多少?由于答案比较大,请把答案对1e9+7取模之后输出
部落是一个魔法部落,部落中一共有n+1个人,小Biu是魔法部落中最菜的,所以他的魔力值为1,魔法部落中n个人的魔法值都不相同,第一个人的魔法值是小Biu的3倍,第二个人的魔法值是第一个人的3倍,以此类推。 现在小Biu想知道整个部落的魔法值和是多少?由于答案比较大,请把答案对1e9+7取模之后输出
121 0
|
数据采集 小程序
关于列表转字符串这个过程的曲折
关于列表转字符串这个过程的曲折
120 0
关于列表转字符串这个过程的曲折
X星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为1,2,3...
X星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为1,2,3...