【Python】基础知识(列表)

134 阅读4分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第5天,点击查看活动详情

在Python中列表和元组可以用一个变量来表示很多个数据 元组和列表相比, 是非常相似的, 只是列表中放哪些元素可以修改调整, 元组中放的元素是创建元组的时候就设定好的, 不能修改调整

列表

创建列表

创建列表主要有两种方式, [ ] 表示一个空的列表

第一种:直接使用字面值来创建 在这里插入图片描述 第二种:使用 list( )来创建 在这里插入图片描述

可以在创建列表的时候,在[ ]中指定列表的初始值 可以直接使用 print 来打印 list 中的元素内容在这里插入图片描述

可以在同一个列表里放不同类型的变量 在这里插入图片描述

访问下标

通过下标访问的方式来获取到列表中的元素 我们把 [ ] 中填写的数字, 称为下标或者索引,[ ]是下标访问操作符 注意: 下标是从 0 开始计数的 在这里插入图片描述

==使用下标来修改列表元素== 在这里插入图片描述

超出下标有效范围,就会出现异常 在这里插入图片描述

可以使用内建函数len来获取列表的长度(元素个数),和字符串相似,因为下标是从 0 开始的, 因此下标的有效范围是 [0, 列表长度 - 1],使用 len 函数可以获取到列表的元素个数,len可以传字符串,列表,元组,字典,自定义的类 在这里插入图片描述

python中的下标还可以写成负数,下标可以取负数,表示 "倒数第几个元素" 在这里插入图片描述

切片操作

通过下标操作是一次取出里面第一个元素 通过切片, 则是一次取出一组连续的元素, 相当于得到一个子列表

==使用 [ : ] 的方式进行切片操作== 在这里插入图片描述==注意:这里只打印4,5是因为前闭后开,[1:3]相当于区间[1,3),这里[ ]中的数字指的是下标==

使用切片的时候,可以省略前后边界 在这里插入图片描述

切片操作还可以指定 "步长" , 也就是 "每访问一个元素后, 下标自增几步" 在这里插入图片描述

切片操作指定的步长还可以是负数, 此时是从后往前进行取元素. 表示 "每访问一个元素之后, 下标自减几步" 在这里插入图片描述 ==从以上的例子可以看出,当切片中的范围超出有效下标后,不会出现异常,而是尽可能的把符合要求的元素给获取到==

切片操作是一个比较高效的操作,进行切片的时候,只是取出了原有列表中的一部分,并不涉及到"数据的拷贝"

遍历列表元素

遍历就是把一个列表(可替换成元组,字典等等)里面的每个元素,都依次的取出来,再分别进行处理 遍历搭配循环使用

1.使用 for 循环来遍历 在这里插入图片描述

2.使用 for 循环遍历,通过下标的方式 在这里插入图片描述

使用 while 循环. 手动控制下标的变化 在这里插入图片描述

新增元素

使用 append 方法, 向列表末尾插入一个元素(尾插) 在这里插入图片描述 ==注意:== 此处的append 是搭配该列表对象a来一起使用的,而不是作为一个独立的函数,要搭配对象来使用的函数也叫做"方法"

使用 insert 方法, 向任意位置插入一个元素 ==insert 第一个参数表示要插入元素的下标==在这里插入图片描述

查找元素

使用 in 操作符, 判定元素是否在列表中存在. 返回值是布尔类型 在这里插入图片描述

使用 index 方法, 查找元素在列表中的下标. 返回值是一个整数. 如果元素不存在, 则会抛出异常 在这里插入图片描述

删除元素

使用 pop 方法删除最末尾元素 在这里插入图片描述

使用pop还能删除任意位置的元素,pop的参数可以传一个==下标==过去 在这里插入图片描述

使用 remove 方法, 按照==值==删除元素 在这里插入图片描述

连接列表

使用 + 能够把两个列表拼接在一起 在这里插入图片描述注:此处的 + 结果会生成一个新的列表. 而不会影响到旧列表的内容

使用 extend 方法, 相当于把一个列表拼接到另一个列表的后面 在这里插入图片描述注:a.extend(b) , 是把 b 中的内容拼接到 a 的末尾. 不会修改 b, 但是会修改 a 在这里插入图片描述 ==None:这是一个特殊的变量的值,表示什么都没有== 因为extend方法其实是没有返回值的,拿一个变量来接收返回值的方法,返回的就是None

使用+=来进行拼接 在这里插入图片描述

a+=b多了三步操作: 1.多创造了一个新的列表的操作 2.多了把大的列表的值赋值给a 3.多了把a的旧值释放的操作

+=和extend拼接的区别: a+=b等价于a = a+b,产生了一个新的列表a a.extend(b)则是直接把b的内容拼接到a的后面