列表可以看作是一个复合类型元素的组合,与其他编程语言的数组概念相似,其中的每个元素都会对应着一个索引下标(从0开始),但元素的类型可以是各不相同的。
创建列表
定义列表时,元素以,
隔开并包裹于[]
中。
>>> list = ['h', 1, '$', 3, 'u']
索引列表元素
索引列表中的元素时可通过下标获取
>>> ['h', 1, '$', 3, 'u'][2]
'$'
也可以通过列表切片获取列表中的区间元素
>>> ['h', 1, '$', 3, 'u'][2:4]
['$', 3]
修改列表元素
与字符串不同的是,列表中的元素是可修改的,可以直接通过下标索引修改
>>> list = ['h', 1, '$', 3, 'u']
>>> list[2] = 'hello'
>>> list
['h', 1, 'hello', 3, 'u']
也可以通过列表切片修改列表中的区间元素
>>> list = ['h', 1, '$', 3, 'u']
>>> list[2:3] = ['hello', 'hi']
>>> list
['h', 1, 'hello', 'hi', 3, 'u']
删除列表元素
删除列表元素可以通过对列表切片的重新组合实现
>>> list = ['h', 1, '$', 3, 'u']
>>> list[:] = list[:2] + list[3:]
>>> list
['h', 1, 3, 'u']
同理可以实现对列表的元素清空
>>> list = ['h', 1, '$', 3, 'u']
>>> list[:] = []
>>> list
[]
对于列表元素的删除实际上是一个对列表进行重新赋值的过程
追加列表元素
可以使用符号+
将列表进行合并以达到追加元素的效果
>>> list = ['h', 1, '$', 3, 'u']
>>> list = list + ["tail", "more tail"]
>>> list
['h', 1, '$', 3, 'u', 'tail', 'more tail']
也可以使用列表类型中内置的append()方法
>>> list = ['h', 1, '$', 3, 'u']
>>> list.append("tail")
>>> list
['h', 1, '$', 3, 'u', 'tail']
嵌套列表
嵌套列表的概念与其他语言的多维数组类似,即是列表元素的内容还是列表,对于普通列表的所有操作同样适用于嵌套列表,值得注意的是嵌套列表的索引依靠多个[]
一级级往下检索
>>> nest_list = [[1, 2, 3], 4, 5]
>>> nest_list[0][2]
3