Python list(列表)


Python一共有6种序列的内置类型,list和tuple是其中最常见的。6种序列的都可以进行的操作包括索引、切片,加(实际上是连接),乘(实际上是复制),检查成员是否存在。

Python list

list格式:以大括号作为识别符, 元素之间以”,”间隔, 末尾加不加”;”语法上都没错。

list = [元素1,元素2,…]; //;可省略

list的元素可以是任何数据类型,也可以是另一个list(即类型多维数组那样的嵌套类型)。

其他语言里面的数组严格限定序列里面的元素必须是同种元素,但是请注意,虽然list跟数组有操作重叠的地方,但与数组(即线性表)是完全不同的数据结构。

list1 = ['apple', 'banana', 'cabbage'];
list2 = [1, 2, 3, 4]
list3 = ['one', 2, True, 3.14];
list4 = ['abc', list1, list2];
#list里面的元素可以是同种元素 也可以是不同种元素 还可以是另一个list

基本操作

list中每个元素都分配了一个索引,从0开始,类似数组的下标,可以利用索引实现随机存取和更改。

>>> list = ['a', 'b', 'c', 'd']
>>> list[1]
'b'
>>> list[1] = 'g'
>>> list[1]
'g'
>>> del list[1] #del可以用来删除其中的元素
>>> list
['a', 'c', 'd']

Python更为优越的是,可以利用负数索引反向读取,即-1表示倒数第一个,以此类推。除此之外还可以进行截取操作。

>>> list = ['a', 'b', 'c', 'd']
>>> list[-1]
'd'
>>> list[1:]
['b', 'c', 'd']

当使用不存在的元素的索引时,会报错。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range
#事实上,最后一行英文的翻译为:索引错误: list索引超出范围。英文好事半功倍。

Python list 脚本操作符

Python表达式结果描述
len([1, 2, 3,4])4求list长度
[1, 2, 3] + ['a', 'b', 'c'][1, 2, 3, 'a', 'b', 'c']“+”实际上是连接
['a'] * 3['a','a','a']“*” 实际上是复制
3 in [1, 2, 3, 4]True检查成员是否存在
for i in [1, 2, 3, 4] print(x)1 2 3 4迭代

Python list 函数&方法

Python内置以下操作list的函数:

函数说明
cmp(list1, list2)比较两个列表的元素,比较方法与其他语言字符串的比较相同。
len(list)求列表元素个数。
max(list)返回列表元素最大值
min(list)返回列表元素最小值
list(tuple)将元组转换为列表

Python list包含以下方法:

方法说明
list.append(obj)在列表末尾添加新的对象
list.count(obj)统计某个元素在列表中出现的次数
list.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj)列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj)将对象插入列表
list.pop(obj=list[-1])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj)移除列表中某个值的第一个匹配项
list.reverse()反向列表中元素
list.sort([func])对原列表进行排序
posted @ 2017-12-07 19:27  从流域到海域  阅读(132)  评论(0编辑  收藏  举报