python笔记04列表及其基本操作
先声明一下
各位大佬,这是我的笔记。
如有错误,恳请指正。
另外,感谢您的观看,谢谢啦!
1.列表的定义
列表是一种内部元素有序,可重复,的序列,列表是可变长度,可变内容的。
列表内部什么类型都可以装,甚至连他自己都可以装(嵌套)
>>> li1=[1,'奥迪',2.34,[1,3,2]]
2.列表的基本操作
(1).列表的初始化方法
主要有两种方法
-
上面已经展示的最常见的方法
>>> li1=[1,2,3,4]
-
把字符串类型初始化为列表
>>> li1 = list('1234')
>>> li1 ['1', '2', '3', '4']
(2).删除列表中的元素的三种方法
-
del删除
>>> del(li1[0])
>>> li1 ['2', '3', '4']
用del如果不加索引就会把li1删掉
>>> del(li1)
>>> li1 Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'li1' is not defined
可以看到li1被del后如果再调用它就会报错。
-
remove()
与del不同remove的()里面装的是要删除的数据
>>> li1.remove('1')
>>> li1 ['2', '3', '4']
还要注意删除没有的元素会报错
-
pop()
这个内建函数的名字其实是弹出,也就是说它是有返回值的
它的括号内装的是索引值,当然默认不写也是可以的
>>> li1 = list('1234') >>> a = li1.pop(2)
>>> a '3' >>> li1 ['1', '2', '4']
(3).反转、排序以及插入
反转
>>> li1 = list('1234')
>>> li1.reverse()
>>> li1
['4', '3', '2', '1']
从小到大排序
>>> li2 = [1,32,4,66,3,14,19,430,0,23,41]
>>> li2.sort()
>>> li2
[0, 1, 3, 4, 14, 19, 23, 32, 41, 66, 430]
从小到大排序
>>> li2 = [1,32,4,66,3,14,19,430,0,23,41]
>>> li2.sort(reverse=True)
>>> li2
[430, 66, 41, 32, 23, 19, 14, 4, 3, 1, 0]
还有插入操作
>>> li1
['4', '3', '2', '1']
>>> li1.insert(2,123)
>>> li1
['4', '3', 123, '2', '1']
(4).索引、切片
这部分真的是和字符串几乎一样
>>> li2[::2]
[430, 41, 23, 14, 3, 0]
>>> li2[::-1]
[0, 1, 3, 4, 14, 19, 23, 32, 41, 66, 430]
一样的左闭右开
>>> li2[1:4]
[66, 41, 32]
(5).加、乘
来看点神奇的
>>> li1 = list('1234')
>>> li2 = list('1024')
>>> li3 = li1 + li2
>>> li3 = li1 * 2
>>> li3
>>> li3
['1', '2', '3', '4', '1', '2', '3', '4']
为列表添加元素的方法还有以下两种
-
append
>>> li3 = list('1234') >>> li3.append('5')
>>> li3 ['1', '2', '3', '4', '5']
>>> li2.append([2,3,4])
>>> li2 ['1', '0', '2', '4', [2, 3, 4]]
-
extend
>>> li1 = list('1234') >>> li1.extend('1234')
>>> li1 ['1', '2', '3', '4', '1', '2', '3', '4']
>>> li1 = list('1234') >>> li1.extend([1,2,3,4])
>>> li1 ['1', '2', '3', '4', 1, 2, 3, 4]
要区分好两种函数的不同之处,()内同是一个新的列表,但是,一个是添加,一个是扩展。