列表的概念
- 一系列按特定顺序排列的元素组成
- 有序
- 任何东西都可以加入列表
列表的创建
list_name = [element1, element2, element3,]
列表元素的操作
- 列表元素的访问
- list_name[inde]
- index从0开始
- list_name[-1] - 列表元素的增删查改
- 查询元素位置:
- list_name.index(‘var1’) 返回元素var1在列表中的索引值 - 修改元素:
- list_name[index] = ‘var1’ - 添加元素:
- 末尾添加 list_name.append(‘var1’)
- 插入 list_name.insert(index,’var1’) 在指定的索引元素前插入 - 删除元素:
- del list_name[index] 删除后元素值不再使用
- list_name.pop(index)删除列表元素,并使用其值
index默认不写,表示删除末尾元素,为0表示删除第一个元素
- list_name.remove(‘var1’) 根据元素值删除第一个匹配的元素,可以使用其值 - 列表元素排序
list_name.sort(reverse=True)将列表元素按字母顺序排序,改变原始列表
默认从大到小,reverse=True有设置则倒序
sorted(list_name)将列表元素按字母顺序排序,此处是复制并返回,不改变原始列表
list_name.reverse()反转列表元素 - 列表长度
len(list_name)
列表的操作
列表的连接
list1.extend(list2) 将list2连接在list1之后
list1 + list2
list1 * 2列表的遍历
- 使用for循环- 数字列表
- range()
- max()
- min()
- sum() - 列表解析
- 列表切片
list_name[]
list_name[:]
list_name[2:]
list_name[:9]
list_name[1:9] - 列表复制
- 直接赋值是无法复制列表的,因为直接赋值时,指向的是同一个变量内存地
- 可以用列表切片实现列表复制
list常用方法
| append(...)
| L.append(object) -> None -- append object to end
|
| clear(...)
| L.clear() -> None -- remove all items from L
|
| copy(...)
| L.copy() -> list -- a shallow copy of L
|
| count(...)
| L.count(value) -> integer -- return number of occurrences of value
|
| extend(...)
| L.extend(iterable) -> None -- extend list by appending elements from the iterable
|
| index(...)
| L.index(value, [start, [stop]]) -> integer -- return first index of value.
| Raises ValueError if the value is not present.
|
| insert(...)
| L.insert(index, object) -- insert object before index
|
| pop(...)
| L.pop([index]) -> item -- remove and return item at index (default last).
| Raises IndexError if list is empty or index is out of range.
|
| remove(...)
| L.remove(value) -> None -- remove first occurrence of value.
| Raises ValueError if the value is not present.
|
| reverse(...)
| L.reverse() -- reverse *IN PLACE*
|
| sort(...)
| L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*
元组的概念
不可变的列表称为元组tuple
元组的创建
tuple_name = (var1, var2, var3)
元组的创建称为"打包"
元组还可以解包
a,b,c = tuple_name
print(a,b,c)
元组的元素值不可修改
但是可以直接给元组变量赋值
元组的常用方法
元组是列表的一种,列表方法也可以用于元组
| count(...)
| T.count(value) -> integer -- return number of occurrences of value
|
| index(...)
| T.index(value, [start, [stop]]) -> integer -- return first index of value.
| Raises ValueError if the value is not present.