day 4 课程总结
列表
语法:
变量 = []
-
列表是容器型数据类型
-
将[]作为容器的标志,里面多个元素用括号隔开 如:[元素1,元素2,元素3,···]
-
列表是可变的(元素个数,元素的值,元素的顺序)
-
任何类型的数据,都可以作为列表的元素;而且同一个列表可以保存不同类型的数据
list = [None, 1, ' ', 'asd'] print(list) for i in range(len(list)): print(list[i], end=' ') list1 = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ] print()
查操作
-
查单个:获取一个元素
列表[下标(索引)]
任何结果是列表的表达式,一般用保存列表的变量
下标:0表示第一个元素,1表示第二个元素,以此类推 或者 -1表示倒数第一个元素,-2表示倒数第二个元素,以此类推# 下标不能越界 num = [10, 45, 78, 9] print(num[1], num[-3]) print(num[-1], num[3]) print([10, 45, 78, 9][0])
-
切片:获取部分元素
完整语法: 列表[开始下标:结束下标:步长]
步长:正顺,负逆,用绝对值决定获取的时候是否跳着去,跳几个
如果步长对应的方向和开始下标的元素到结束下标对应的元素方向不一致,切片无效,结果是空列表''' 获取原理: 如果步长对应的方向和开始下标的元素到结束下标对应的元素方向不一致,切片无效,结果是空列表 如果切片有效,先确定有效范围([开始下标,结束下标]),然后再有效范围内,根据步长方向按照步长的绝对值获取元素,创建新的表 如果从前往后取,取到最后一个,或者从后往前取到第一个 若要取最后一个,让下标越界或省略 省略步长:[开始下标:结束下标](步长为+1) 省略开始下标:[:开始下标:步长](若步长为正,则从第一个元素开始;若步长为负,则从最后一个元素开始) 省略结束下标:[开始下标::步长] ''' print(num[1:-1:1]) print(num[1:-2:1]) print(num[1:3:-1]) print(num[3:1:2]) print() film_names = ['碟中谍', '肖申克的救赎', '霸王别姬', '星际穿越', '阿Q正传', '大话西游', '绿皮书', '这个杀手不太冷'] print(film_names[1:4:1]) print(film_names[0:2:1]) print(film_names[2:-1:2]) print(film_names[-1:-5:-1]) print(film_names[-4:0:-3])
-
遍历:一个一个取,直到元素全部取完
方法一:
for 变量 in 列表:
(变量依次获取的是列表中的每个元素)
方法二:
for 变量 in range(len(列表))
(变量取到的是元素的下标)
方法三:
for 下标,元素 in enumerate(列表)
同时获取列表元素和下表num1 = [10, 20, 30, 40] for index, item in enumerate(num1): print(index, item)
增操作:
-
列表.append(元素) 在指定列表的最后添加指定元素
num2 = [1, 2, 5, 8, 23, 24, 56, 98, 97] num3 =[] for i in num2: if i % 2 == 0: num3.append(i) print(num3)
-
列表.insert(下标,元素) 在指定下标对应元素前插入元素
删操作:
-
del 列表[下标] 删除列表中指定下标的元素
num = [10, 45, 78, 9] del num[1] print(num)
-
列表.remove(元素) 删除指定的元素,若在列表中有多个一样的元素,则删除第一个,若元素不存在,则报错
-
列表.pop(下标) 若没有下标,则取出列表中最后一个,若指定下标,则取出列表中指定下标的元素,取出后返回
改操作
列表[下标] = 新元素
-
求最大值、求和
list8 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(max(list8))
print(sum(list8))
print(max(65, 7, 98, 321, 5, 4))