在python中列表是一种有序,可更改的集合,允许重复的成员
1.创建列表
python中用[ ]定义列表。
>>> lx = [10, 10, 20, 20, 30, 30]
>>> lx
[10, 10, 20, 20, 30, 30]
这样就创建了一个列表,可以用来存放我们想要存放的数据与内容啦。
定义空列表,这个直接用变量名与[ ]即可。
>>> lx = []
>>> lx
[]
空列表吖,想当于创建了一个空箱子,接下来就可以向箱子里存东西了啦。
列表中的元素可以是数字,字符串,列表,元组,字典。
>>> lx = [10, "lxxz", [2004, 2005], (2004, 2005), {"lz":2004, "chh":2005}]
>>> lx
[10, 'lxxz', [2004, 2005], (2004, 2005), {'lz': 2004, 'chh': 2005}]
>>>
列表是个啥都可以装的,来者不拒。
2.显示列表中的信息
2-1可以使用下标索引来显示
python的列表是有序的数据容器,可以使用索引来表示列表中的元素。
列表中第一个元素索引为0,第二个元素索引为1……,依此类推
相当于正着数列表
例如:lx列表中10的索引为0,20的索引是1……,
注意注意注意:列表元素的索引是从0开始的,且输入的索引若超出列表元素的索引范围会报错。
小心使用
>>> lx = [10, 20, 30]
>>> lx[0]
10
>>> lx[1]
20
>>> lx[2]
30
>>> lx[3]
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
lx[3]
IndexError: list index out of range
用负数表示索引,-1代表列表的倒数第一个元素,-2代表倒数第二个……,依此类推。
相当于倒着数列表。
>>> lx = [11, 22, 2004, 2005]
>>> lx[-1]
2005
>>> lx[-2]
2004
索引嘛,就是这个元素在列表中的编号,我们可以通过索引找到对应的元素,从而对其进行相应的操作。
2-2可以用中括号的形式对列表进行切片操作
语法: list[a:b:c]
参数a代表开始的索引位置,参数b代表结束的索引位置,参数c代表步长(相当于等差数列的差)
参数a,b,均可省略,省略参数a,代表从列表头开始,省略b代表到列表尾。
a,b都省略相当于从列表头到列表尾。
>>> lx = [1, 2, 3, 4, 5, 6, 7, 8]
>>> lx[0:]
[1, 2, 3, 4, 5, 6, 7, 8]
>>> lx[:]
[1, 2, 3, 4, 5, 6, 7, 8]
>>> lx[::2]
[1, 3, 5, 7]
>>> lx[::3]
[1, 4, 7]
例如:lx[0:2]意义为将列表从第1个元素到第2个元素进行切片,切下这一部分的(注意对原始列表没有影响),就是告诉python我想要用这个列表的哪一个部分,我们给出索引为参数,开始到结束,python根据我们给出的索引进行切片,就像买肉,我们对着那一大块肉说切这块,切那块。
lx[0:-1]相当于告诉python我要切lx这个列表,从索引0的位置到缩引-1的位置,就这样。
>>> lx = [11, 22, 2004, 2005]
>>> lx[0:]
[11, 22, 2004, 2005]
>>> lx[0:1]
[11]
>>> lx[0:2]
[11, 22]
>>> lx[0:-1]
[11, 22, 2004]
对切片操作指定步长,lx[::2]相当于从列表头到列表尾,列表索引的公差为2,提取出一个索引的数列,python再根据该索引数列从列表中提取值lx[::2],索引首项为0,公差为2,索引的范围为0-7
固提取出来的索引为,0,2,4,6 对应的元素为1,3,5,7
>>> lx = [1, 2, 3, 4, 5, 6, 7, 8]
>>> lx[0:]
[1, 2, 3, 4, 5, 6, 7, 8]
>>> lx[:]
[1, 2, 3, 4, 5, 6, 7, 8]
>>> lx[::2]
[1, 3, 5, 7]
>>> lx[::3]
[1, 4, 7]
3.更改列表元素的值
用索引将该元素表示出来,用赋值操作符 = 更改即可。
>>> lx = [11, 22, 2004, 2005]
>>> lx[0] = 1122
>>> lx[1] = 3344
>>> lx
[1122, 3344, 2004, 2005]
4.删除列表中的信息
语法 :del 元素
这个元素可以是列表的元素,也可以是列表的切片,也可以是整个列表。
>>> lx = [11, 22, 2004, 2005]
>>> del lx[0]
>>> del lx[1]
>>> lx
[22, 2005]
>>> del lx
>>> lx
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
lx
NameError: name 'lx' is not defined
————————————————————————————————————————————————————————————
>>> lx = [11, 22, 2004, 2005]
>>> del lx[0:2]
>>> lx
[2004, 2005]
5.列表函数的应用
Lx = [1,4,6,7,8]
len()可以得到列表元素个数,例如想要得列表元素个数,可用len(Lx)
max()可以得到列表元素的最大值
min()可以得到列表元素的最小值
list()将其他的数据类型转化为列表
id()获取变量代表的对象的内存地址
>>> lx = [11, 22, 2004, 2005]
>>> len(lx)
4
>>> max(lx)
2005
>>> min(lx)
11
>>> id(lx)
2274912827336
>>> id(lx[0])
140737336275520
>>> id(lx[1])
140737336275872
>>> ch = "HELLO"
>>> list(ch)
['H', 'E', 'L', 'L', 'O']
6.列表方法的应用
list.append()在列表末尾加入元素,这个元素可以是python的任何数据类型。
list.copy()复制列表
list.clear()清空列表
list.sort()对原列表进行排序
list.reverse()反向列表中的元素
>>> lx = [11, 22, 2004, 2005]
>>> lx.append(1122)
>>> lx
[11, 22, 2004, 2005, 1122]
>>> ch = lx.copy()
>>> id(ch)
1986327565192
>>> id(lx)
1986324462024
>>> ch.clear()
>>> ch
[]
>>> lx.sort()
>>> lx
[11, 22, 1122, 2004, 2005]
>>> lx.reverse()
>>> lx
[2005, 2004, 1122, 22, 11]
list.remove()移除列表中的某一元素
list.pop()默认移除列表中的最后一个元素,若pop有参数,则移除该参数的索引处的列表元素。
>>> lx = [11, 22, 2004, 2005]
>>> lx.remove(11)
>>> lx
[22, 2004, 2005]
>>> lx.pop()
2005
>>> lx
[22, 2004]
>>> lx.pop(0)
22
>>> lx
[2004]
list.insert()将对象插入列表
>>> lx = [11, 22, 2004, 2005]
>>> lx.insert(0, 1122)
>>> lx
[1122, 11, 22, 2004, 2005]
>>> lx.insert(1, [100, 200])
>>> lx
[1122, [100, 200], 11, 22, 2004, 2005]
list.index()找出某个值第一个匹配项的索引值。
list.extend()在列表末尾一次性追加另一个列表中的多个值
list.count()统计某个元素在列表中出现的次数
>>> lx = [11, 22, 2004, 2005, 11, 22]
>>> lx.index(22)
1
>>> lx.index(11)
0
>>> ch = [18, 19]
>>> lx.extend(ch)
>>> lx
[11, 22, 2004, 2005, 11, 22, 18, 19]
>>> lx.count(11)
2
>>> lx.count(22)
2
以上内容是笔者对学习内容的一些总结,由于笔者水平有限,若有不妥之处在所难免,恳请各位批评指正。