python学习系列5——数据类型(列表)
列表可以存储整数、实数、字符串、列表、元组等任何类型的数据,并且和数组不同的是,在同一个列表中元素的类型也可以不同。
(一)创建列表
列表使用"[ ]"创建。
(1)使用 = 运算符直接创建列表
1 num = [1,2,3,4,5,6,7] 2 name = ["C语言中文网","http://c.biancheng.net"] 3 program = ["C语言","Python","Java"]
(2)使用list()函数创建列表
1 a_tuple = ('crazyit', 20, -1.2) 2 # 将元组转换成列表 3 a_list = list(a_tuple) 4 print(a_list)
(二)列表添加元素
(1)append方法
代码:
1 a_list = ['crazyit', 20, -2] 2 # 追加元素 3 a_list.append('fkit') 4 print(a_list) 5 a_tuple = (3.4, 5.6) 6 # 追加元组,元组被当成一个元素 7 a_list.append(a_tuple) 8 print(a_list) 9 # 追加列表,列表被当成一个元素 10 a_list.append(['a', 'b']) 11 print(a_list)
结果:
['crazyit', 20, -2, 'fkit'] ['crazyit', 20, -2, 'fkit', (3.4, 5.6)] ['crazyit', 20, -2, 'fkit', (3.4, 5.6), ['a', 'b']]
(2)extend方法
代码:
1 b_list = ['a', 30] 2 # 追加元组中的所有元素 3 b_list.extend((-2, 3.1)) 4 print(b_list) 5 # 追加列表中的所有元素 6 b_list.extend(['C', 'R', 'A']) 7 print(b_list) 8 # 追加区间中的所有元素 9 b_list.extend(range(97, 100)) 10 print(b_list)
结果:
['a', 30, -2, 3.1] ['a', 30, -2, 3.1, 'C', 'R', 'A'] ['a', 30, -2, 3.1, 'C', 'R', 'A', 97, 98, 99]
(3)insert方法
代码:
1 c_list = list(range(1, 6)) 2 print(c_list) 3 # 在索引3处插入字符串 4 c_list.insert(3, 'CRAZY' ) 5 print(c_list) 6 # 在索引3处插入列表 7 c_list.insert(3, ["crazy"]) 8 print(c_list)
结果:
[1, 2, 3, 4, 5] [1, 2, 3, 'CRAZY', 4, 5] [1, 2, 3, ['crazy'], 'CRAZY', 4, 5]
(二)列表删除元素
删除指定位置元素
(1)del语句
代码:
1 a_list=[20,2.4,(3,4)] 2 del a_list[-1] 3 print(a_list)
结果:
[20, 2.4]
(2)remove方法
删除指定元素
1 c_list = [20, 'crazyit', 30, -4, 'crazyit', 3.4] 2 # 删除第一次找到的30 3 c_list.remove(30) 4 print(c_list) 5 # 删除第一次找到的'crazyit' 6 c_list.remove('crazyit') 7 print(c_list) 8 #再次尝试删除 30,会引发 ValueEroor 错误 9 c_list.remove(30)
(3)clear方法
清空列表
代码:
1 c_list = [20, 'crazyit', 30, -4, 'crazyit', 3.4] 2 c_list.clear() 3 print(c_list)
结果:
[]
(三)列表修改元素
切片就是获取列表部分元素的方法。
代码:
1 b_list = list(range(1, 5)) 2 print(b_list) 3 # 将第2个到第4个(不包含)元素赋值为新列表的元素 4 b_list[1: 3] = ['a', 'b'] 5 print(b_list) 6 # 将第3个到第3个(不包含)元素赋值为新列表的元素,就是插入 7 b_list[2: 2] = ['x', 'y'] 8 print(b_list)
结果:
[1, 2, 3, 4] [1, 'a', 'b', 4] [1, 'a', 'x', 'y', 'b', 4]
(四)列表访问元素
代码:
1 num = [1,2,3,4,5,6,7] 2 print(num[2:4])
结果:
[3, 4]
(五)list常用方法
(1)count()方法
求某元素出现的次数
代码:
1 a_list = [2, 30, 'a', [5, 30], 30] 2 # 计算列表中30的出现次数 3 print(a_list.count(30)) 4 # 计算列表中[5, 30]的出现次数 5 print(a_list.count([5, 30]))
结果:
2 1
(2)index()方法
求某元素出现的位置
代码:
1 a_list = [2, 30, 'a', 'b', 'crazyit', 30] 2 # 定位元素30的出现位置 3 print(a_list.index(30)) 4 # 从索引2处开始、定位元素30的出现位置 5 print(a_list.index(30, 2)) 6 # 从索引2处到索引4处之间定位元素30的出现位置,因为找不到该元素,会引发错误 7 print(a_list.index(30, 2, 4))
结果:
1 5 Traceback (most recent call last): File "C:\Users\mengma\Desktop\1.py", line 7, in <module> print(a_list.index(30, 2, 4)) # ValueError ValueError: 30 is not in list
(3)pop()
移除特定元素
代码:
1 a_list=[1,2,3] 2 #移除列表的栈顶元素 3 3 print(a_list.pop()) 4 print(a_list) 5 #移除列表中索引为 0 的元素1 6 print(a_list.pop(0)) 7 print(a_list)
结果:
3 [1, 2] 1 [2]
(六)range()快速初始化list
代码:
1 #函数 range() 从 2 开始数,然后不断地加 2,直到达到或超过终值 2 even_numbers = list(range(2,11,2)) 3 print(even_numbers)
结果:
[2, 4, 6, 8, 10]

浙公网安备 33010602011771号