常用的容器类数据类型
- 共同特点:都能装一组数据、都有长度(即数据的个数)
列表(list)
-
用 [] 来装数据,数据是有序的(即有索引),可以重复,可以对里面的数据进行改变(增删改、翻转,排序等)
# 定义空列表 list1 = [] # list1 为定义的列表名,可以为任意名字 list1 = list()
-
可以存放任意类型的数据,包括自身
-
语法
list1 = list(1.1,'张三',True,[66,'李四',False]) # 或 list1 = [1.1,'张三',True,[66,'李四',False]]
计算列表长度len()
- 计算列表的长度,即计算列表中元素的个数
print(len(list1))
#输出结果
4
一个元素长度为1,列表中存放的一个列表长度也为1,所以list1的长度是4
使用索引来访问列表中的元素
-
语法:列表名[索引号]
-
列表中第一位元素,索引号为0,第二位元素,索引号为1,依次类推
-
倒过来数时,倒数第一个元素索引号为-1,倒数第二个元素索引号为-2,依此类推
list1 = [1.1,'张三',True,[66,'李四',False]] print(list1[0]) #列表正数第一个元素 print(list1[1]) #列表正数第二个元素 print(list1[-1]) #列表倒数第一个元素 print(list1[-2]) #列表倒数第二个元素 #输出结果 1.1 张三 [66, '李四', False] #列表中的列表为一个元素 True #如果要访问列表中列表的数据,例如要访问list1列表中第四个元素中的第一个元素 print(list1[-1][0]) #先访问倒数第一个元素 [66, '李四', False] #再访问第一个元素 #输出结果 66
列表切片(截取)
-
语法:列表名[起始索引号:结束索引号:步长](不包括结束位置的元素,步长不写默认为1)
list1 = [99,88,77,66,55,44,33,22,11,0] print(list1[2:6]) #输出结果 [77, 66, 55, 44]
-
起始索引号:如果不写起始索引号,表示从第一个元素开始截取
list1 = [99,88,77,66,55,44,33,22,11,0] print(list1[:3]) #输出结果 [99, 88, 77]
-
结束索引号:如果不写结束索引号,表示截取到最后一个元素
list1 = [99,88,77,66,55,44,33,22,11,0] print(list1[3:]) #输出结果 [66, 55, 44, 33, 22, 11, 0]
-
步长:表示截取时,两个元素中间间隔的逗号数量,不写的话默认值为1
-
步长为正时,起始索引号要小于结束索引号,表示从左往右截取元素
list1 = [99,88,77,66,55,44,33,22,11,0] print(list1[0:8:2]) #步长为2,输出结果 [99, 77, 55, 33]
-
步长为负时,起始索引号要大于结束索引号,表示从右往左截取元素
list1 = [99,88,77,66,55,44,33,22,11,0] print(list1[8:0:-2]) #步长为-2,输出结果 [11, 33,
-