软件测试/测试开发丨Python常用数据结构-列表list

列表的定义

  • 列表是有序的可变元素的集合,使用中括号[ ]包围,元素之间用逗号分隔;
  • 列表是动态的,可以随时扩展和收缩;
  • 列表是异构的,可以同时存放不同类型的对象;
  • 列表允许出现重复的元素。

列表的示意图:

列表的创建

方法一:通过构造函数创建

方法二:中括号创建并填充

方法三:列表推导式

索引

可以通过索引值来访问对应的元素:

  • 默认正向 索引,编号从0开始;
  • 支持反向 索引,编号从 -1 开始。

索引的示意图:

示例:

切片

[start:stop:step]

  • start值:开始索引值,若没有指定,则默认为0;
  • stop值:结束索引值,但不包括这个结束索引值;若没有指定,则取列表允许的最大索引值;
  • step值:步长值,指每一步的大小,若没有指定,则默认为1;

以上三个值都是非必填的。

示例:

运算符

  • 重复:使用*运算符,可以重复生成列表元素。
  • 合并:使用+运算符,可以将列表合二为一。

示例:

成员检测

  • in:检查一个元素是否在列表中,若在则返回True,否则返回False。
  • not in:检查一个列表是否不包含某个元素,若不在则返回True,否则返回False。

示例:

列表常用方法

1. append()

append(item):将一个对象item添加到列表的末尾。

  • 入参:对象item
  • 返回:None

示例:

2. extend()

extend(iterable):将一个可迭代对象的所有元素,添加到列表末尾。

  • 入参:可迭代对象iterable
  • 返回:None

示例:

3. insert()

insert(index, item):将一个对象插入到指定的索引位置,原索引位置及后面的元素后移一位。

  • 入参:索引值index,一个对象item
  • 返回:None

示例:

4. pop()

pop(index)pop():弹出并返回所指定索引的元素。

  • 入参:索引值index,可不传
  • 返回:

a. 指定索引的元素;

b. 未指定索引,则返回末尾元素;

c. 索引值不正确,或者列表已经为空,则引发IndexError报错。

示例:

5. remove()

remove(item):移除列表中第一个等于item的元素。目标元素必须已存在,否则引发ValueError报错。

  • 入参:指定元素item
  • 返回:None

示例:

6. sort()

sort(key=None, reverse=False):对列表进行原地排序,只使用<来进行各项间比较。

  • 入参:支持2个关键字参数
  • key------指定带有一个参数的函数,用于从每个列表元素中提取比较键。
  • reverse------默认值为False表示升序,为True表示降序。
  • 返回:None

示例:

7. reverse()

reverse():将列表中的元素顺序反转。反转只是针对索引值,元素之间不相互比较。

  • 入参:无
  • 返回:None

示例:

列表嵌套

列表嵌套是指在列表里存放列表;列表的常用方法都适用于列表嵌套。

示例:

列表推导式

列表推导式是指循环创建列表,相当于for循环创建列表的简化版。

  • 语法:[x for x in li if x ...]

示例:

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
小女孩真可爱8 分钟前
大模型学习记录(八)---------RAG评估
linux·人工智能·python
姓刘的哦12 分钟前
RK3568开发板运行Qt
开发语言·qt
刘晓倩17 分钟前
Python3的Sequence
开发语言·python
ZhengEnCi22 分钟前
一次多线程同步问题的排查:从 thread_count 到 thread.join() 的踩坑之旅
python·网络协议·tcp/ip
ULTRA??26 分钟前
ROS Action 完整示例(AI辅助):客户端发目标 + 服务器接参数(lambda 替代 boost::bind)
c++·python
消失的旧时光-194327 分钟前
彻底理解 synchronized:实例锁、类锁与自定义锁的原理和最佳实践
java·开发语言
free-elcmacom28 分钟前
用Python玩转GAN:让AI学会“造假”的艺术
人工智能·python·机器学习
计算机毕设匠心工作室38 分钟前
【python大数据毕设实战】全国健康老龄化数据分析系统、Hadoop、计算机毕业设计、包括数据爬取、数据分析、数据可视化、机器学习
后端·python
45288655上山打老虎1 小时前
【智能指针】
开发语言·c++·算法
稚辉君.MCA_P8_Java1 小时前
Gemini永久会员 go数组中最大异或值
数据结构·后端·算法·golang·哈希算法