列表

列表由一系列按特定顺序排列的元素组成。
在Python中,用方括号( [ ] ) 表示列表,并用逗号( ,)来分隔其中的元素。
在Python中,一个列表中的数据类型可以各不相同,可以同时分别为整数、实数、字符串等基本类型,甚至是列表、元组、字典、集合以及其他自定义类型的对象。

访问列表元素

列表名称[元素的索引]

注意:列表元素的索引从0开始,而不是1。
索引为-1则返回列表的最后一个元素,索引-2返回倒数第二个,索引-3返回倒数第三个,以此类推。

列表常用方法

方法

说明

list.append(x)

将元素x添加至列表list尾部

list.extend(list2)

将列表list2中所有元素添加至列表list尾部

list.insert(index, x)

在列表list指定位置index处添加元素x,该位置后面的所有元素后移一个位置

list.remove(x)

在列表list中删除首次出现的指定元素,该元素之后的所有元素前移一个位置

list.pop([index])

函数,删除并返回列表list中下标为index(默认为-1)的元素

list.clear()

删除列表list中所有元素,但保留列表对象

list.index(x)

返回列表list中第一个值为x的元素的下标,若不存在值为x的元素则抛出异常

list.count(x)

返回指定元素x在列表list中的出现次数

list.reverse()

对列表list所有元素进行逆序

list.sort(key=None, reverse=False)

对列表list中的元素进行排序,key用来指定排序依据,reverse决定升序(False),还是降序(True)

list.copy()

复制列表list

del list[index]

函数,删除指定位置index的元素

len(list)

函数,可以统计列表list中的元素个数

其他相关内容


添加元素

number = [1,2,3,4,5]
number = number + [7]

严格意义上来讲,这并不是真的为列表添加元素,而是创建了一个新列表,并将原列表中的元素和新元素依次复制到新列表的内存空间。由于涉及大量元素的复制,该操作速度较慢,在涉及大量元素添加时不建议使用该方法。

使用列表对象的append()方法在当前列表尾部追加元素,原地(不改变列表在内存中的首地址)修改列表,是真正意义上的在列表尾部添加元素,速度较快。


列表中包含的是元素值的引用,而不是直接包含元素值。
即:列表中包含的内容为元素的内存地址


number = [1, 654,  655, 44, 31, 566, 655, 44]
num = number
print(num)
print(number)
print(id(num))
print(id(number))
输出为
[1, 654, 655, 44, 31, 566, 655, 44]
[1, 654, 655, 44, 31, 566, 655, 44]
1683589873736
1683589873736

num 和 number 指向同一内存

另一种情况

No = number.copy()
print(id(No))
输出为
1683592107208

新建了一个No, 在内存中开辟了一个新的空间