前言:
😄作为python中“加强版的数组”:切片。掌握是很重要的,一个python程序员牛不牛,就看他切片玩得厉不厉害,这一章就来一起学习一下列表吧。🚀🚀🚀… … …
这里是目录
1.1 列表:
有时候可能需要将一些相互间有关联的数据保存到一起,很多接触过编程的读者脑海里浮现出来的第一个概念应该就是数组。
可以这么说,列表就是python中的数组,因为python没有数据类型的限制,所以列表能够存放不同类型的变量,显得更为强大。
1.1.1 创建一个列表
创建一个列表很简单,只需要用中括号将数据包裹起来(数据之间用逗号分隔)就可以了。
我们也可以将列表复制给一个变量。以便于操作这个列表。
type()函数用于返回指定参数的类型,list即是列表的意思。
我们还可以往列表里放各种类型的数据。
list_table = [555, "好想谈恋爱", 9.99, ['l', 'y']]
创建一个空列表也是可以的
empty = []
1.1.2 向列表添加元素
使用append()方法可以往列表中添加元素:
如果同时想加入两个会怎样呢?
喔嚯,报错了,这时因为append()方法只支持一个参数。
如果希望同时添加多个数据,可以使用extend()方法向末尾添加多个元素:
extend()实际上是用一个列表来扩充另一个列表,所以他的参数是另一个列表。
使用insert()往列表中插入元素:
insert()方法有两个参数:第一个参数指定待插入位置(索引值),第二个参数是待插入的元素值。
下面把0插入table列表最前面:
insert()方法中代表位置的第一个参数还支持负数,表示列表末尾的相对距离:
1.1.3 从列表中获取元素
通过索引值可以直接获取列表中的某个元素:
如果想访问列表最后一个元素,怎么做?我们可以使用len()函数来获取列表的长度在减去1,或者我们也可以将索引值设为负数,表示列表的末尾反向索引:
我们也可以将“黑丝”和“白丝”交换下位置:
legs = ["黑丝", "白丝", "肉丝", "渐变"]
temp = legs[0]
legs[0] = legs[1]
legs[1] = temp
还有种python中的简便方式:
legs = ["黑丝", "白丝", "肉丝", "渐变"]
legs[0], legs[1] = legs[1], legs[0]
1.1.4 从列表删除元素
从列表中删除元素,可以有三种方法实现:remove(),pop(),del()。
remove()方法需要指定一个待删除的元素:
使用remove()方法是,并不需要知道这个元素的在列表中的具体位置,但是如果这个元素在指定的列表不存在时,程序就会报错。
pop()方法是将列表中指定的元素“弹”出,也就是取出并删除该元素的意思,它的参数是一个索引值:
如果不带参数,pop()方法默认是弹出最后一个元素:
最后一个是del语句,它并不是一个列表的方法,或者BIF:
del不仅可以删除列表中的某个元素,还可以用来删除整个列表。
上面的代码由于legs整个变量被del语句删除了,所以再次引用时,python由于找不到该变量,便会报错。
1.1.5 列表切片
对列表进行切片,使得python的列表能够更加灵活,怎样运用切片取出需要的元素呢?
如上操作,就是需要通过[ : ]加上所需要的索引值,需要注意的是:冒号右边的位置的元素是不被包含的。所以legs[2 : 4]只会输出“肉丝”到“渐变”。
如果想偷一下懒的话,省略位置也是可以的。如果省略了开始位置,python会从0开始。同理,如果要从指定索引值到列表末尾所有元素,把结束位置省去也可以。如果都省略,python则会返回整个列表的拷贝:
如果要获取列表最后几个元素可以这样:
列表切片并不会修改列表自身的组成结构和数据,它其实是为列表创建一个新的拷贝(副本)并返回。