列表list
本质:list列表的本质时一个有序的集合
、
1、创建列表
list1=[]
list2=list()
列表中的元素的数据类型可以不同,十分灵活。
list3 = [33, “good”, True, 10.32]
2、将字符串转换为列表
str1=abcdx=list(str1)
x变成了列表,可进行列表操作。
3、列表元素的访问
index 索引 范围是[0,len(list))
list4 = [22, 33, 12, 32, 45]
list4[0]=22
list4[2]=12
4\ 列表元素的替换
功能:更改列表元素的值
语法:列表名[下标] = 值
list4 = [22, 33, 12, 32, 45]
list4[0] = “hello”
print(list4[0])
5、列表组合
语法: 列表3 = 列表1 + 列表2
将list1中的元素和list2中的元素全取出,组合成一个新的列表,并进行返回。
list1 = [1, 2, 3]
list2 = [‘hello’, ‘yes’, ‘no’]
list3 = list1 + list2
print(list3)
6、列表重复
语法: 列表2 = 列表1 * n
list1 = [1, 2, 3]
list2 = list1 * n
print(list2)
7、 判断元素是否在列表中
语法:元素 in 列表
若存在则返回True,否则返回False
list1 = [1, 2, 3]
print(1 in list1)
8、 列表截取
语法:列表[start: end]
表示获取从开始下标到结束下标的所有元素[start, end)
list1 = [1, 2, 3, ‘hello’, ‘yes’, ‘no’]
print(list1[2:4])
#若不指定start,则默认从0开始截取,截取到指定位置
#若不指定end,则从指定位置开始截取,截取到末尾结束
9、 二维列表语法:列表 =[列表1,列表2,列表3,… ,列表n]
#创建二维列表,即列表中的元素还是列表
list1 = [[1, 2, 3],[2, 3, 4],[5, 4, 9]]
10、 二维列表取值
语法:列表名[下标1][下标2]
注意:下标1代表第n个列表(下标从0开始),下标2代表第n个列表中的第n个元素
list1 = [[1, 2, 3],[2, 3, 4],[5, 4, 9]]
print(list1[0][0])5.列表的方法
11、 list.append(元素/列表)
功能:在列表中末尾添加新的元素【在原本的列表中追加元素】
注意:append()中的值可以是列表也可以是普通元素
list1 = [3, 4, 6]
list1.append(6)
print(list1)
[3, 4, 6, 6]
12、 list.extend(列表)
功能:在列表的末尾一次性追加另外一个列表中的多个值注意:extend()中的值只能是列表/元组[一个可迭代对象],不能是元素
list1 = [1,2,3]
list2 = [3, 4,5]
list1.extend(list2)
print(list1)
[1, 2, 3, 3, 4, 5]
13、 list.insert(下标值, 元素/列表)
功能:在下标处插入元素,不覆盖原本的数据,原数据向后顺延
注意:插入的数据可以是元素也可以为列表
list1 = [1,2,3]
list1.insert(1,0)
print(list1)
[1, 0, 2, 3]
list1.insert(1,[2, 4, 8])
print(list1)
[1, [2, 4, 8], 0, 2, 3]
14、 list.pop(下标值)
功能:移除列表中指定下标处的元素(默认移除最后一个元素),并返回移除的数据
list1 = [1, [2, 4, 8], 0, 2, 3]
list1.pop()
3
print(list1)
[1, [2, 4, 8], 0, 2]
list1.pop(2)
0
15、 list.remove(元素)
功能:移除列表中的某个元素第一个匹配结果
list1 = [1, 2, 3]
list1.remove(2)
print(list1)
[1, 3]
16、 list.clear()功能:清除列表中所有的数据
list1 = [1, 2, 3]
list1.clear()
print(list1)
[]
17、 list.index(object[, start】[, stop])
功能:从指定的范围的列表中找出某个值第一匹配的索引值 ,若不存在则报错。若不指定范围,则默认是整个列表。
list1 = [1, 2, 3]
list1.index(2)
1
list1.index(4)
Traceback (most recent call last):
File “”, line 1, in
ValueError: 4 is not in list
注意:若在列表中找不到这个元素,则会报错。
18、 list.count(元素)功能:查看元素在列表中出现的次数
list1 = [1, 2, 3, 1]
list1.count(1)
19 len(list)功能: 获取元素列表个数
list1 = [1, 2, 3, 1]
len(list1)
20 max(list)语法:获取列表中的最大值
list1 = [1, 2, 3, 1]
max(list1)
21、 min(list) 语法:获取列表中的最小值
list1 = [1, 2, 3, 1]
min(list1)
22、 list.reverse()语法: 列表倒叙
list1 = [1, 2, 3, 1]
list1.reverse()
print(list1)
[1, 3, 2, 1]
23、 list.sort() 语法:列表排序 默认升序
list1 = [1, 2, 3, 1]
list1.sort()
print(list1)
[1, 1, 2, 3]
24、赋值拷贝语法:list1 = [1, 2, 3]
list2 = list1
list1 = [1, 2, 3, 1]
list2 = list1
print(list2)
[1, 2, 3, 1]
print(id(list1))
4314476424
print(id(list2))
4314476424注意:赋值拷贝为引用拷贝,类似于快捷方式
15、浅拷贝语法:list1 = [1, 2, 3]
list2 = list1.copy()
list1 = [1, 2, 3, 1]
list2 = list1.copy()
print(list2)
[1, 2, 3, 1]
print(id(list2))
4314525320
print(id(list1))
4314524808
注意:浅拷贝为一维内存拷贝,开辟了新的内存空间5.16 list(元组)功能:将元组转为列表
list1 = list((1, 2, 3, 4))
print(list1)
[1, 2, 3, 4]
16、使用for循环遍历列表
语法:for 变量名 in 列表 :语句
功能:for循环主要用于遍历列表遍历:指的是依次访问列表中的每一个元素,获取每个下标对应的元素值说明:按照顺序获取列表中的每个元素,赋值给变量名,再执行语句,如此循环往复,直到取完列表中所有的元素为止
list1 = [‘hello’, 78, ‘你好’, ‘good’]
for item in list1:
… print(item)
…
hello
78
你好