1.认识列表
1) 列表是Python提供的容器型数据类型;将[]作为容器的标志,里面多个元素用逗号隔开:[数据1, 数据2, 数据3,...]
2) 列表是可变的(指的是元素的个数和值可变);列表是有序的(支持下标操作)
3) 元素:任何类型的数据都可以作为列表的元素
说明:
容器型数据 - 可以同时保存多个数据
元素 - 容器中每个独立的数据
2.列表的增删改查
语法: 列表[下标] - 获取列表中指定下标对应的元素
说明:a.列表 - 可以是具体的一个列表,也可以是保存列表的变量
b.[] - 固定写法
c.下标 - 又叫索引;列表的下标指定是列表中的元素在列表中的位置信息。
第一种下标(通用的): 元素从前往后对应的下标从0开始依次增加
第二种下标: 元素从后往前对应的下标从-1开始依次减少
注意:下标不能越界
1. 查 - 获取列表元素
语法1:
for 变量 in 列表:
循环体
语法2:
for 变量 in range(len(列表)):
循环体(列表[变量])
补充:len(列表) - 获取列表中元素的个数(获取列表的长度)
# 2. 改 - 修改元素的值
# 语法:列表[下标] = 新值 - 修改列表中指定下标对应的元素为指定的新值
nums = [10, 20, 30]
print(nums) # [10, 20, 30]
nums[0] = 100
print(nums) # [100, 20, 30]
# 3. 增 - 添加元素
# 1)列表.append(元素) - 在指定列表的最后添加指定的元素
heroes = ['王昭君', '猪八戒', '孙悟空', '后羿', '鲁班7号']
print(heroes) # ['王昭君', '猪八戒', '孙悟空', '后羿', '鲁班7号']
heroes.append('赵云')
print(heroes) # ['王昭君', '猪八戒', '孙悟空', '后羿', '鲁班7号', '赵云']
# 2)列表.insert(下标, 元素) - 将元素插入到列表中指定下标对应的元素前
heroes = ['王昭君', '猪八戒', '孙悟空', '后羿', '鲁班7号']
print(heroes) # ['王昭君', '猪八戒', '孙悟空', '后羿', '鲁班7号']
heroes.insert(1, '赵云')
print(heroes) # ['王昭君', '赵云', '猪八戒', '孙悟空', '后羿', '鲁班7号']
# 4.删 - 删除元素
# 1)del 列表[下标] - 删除列表中指定下标对应的元素
heroes = ['王昭君', '猪八戒', '孙悟空', '后羿', '鲁班7号']
del heroes[1]
print(heroes) # ['王昭君', '孙悟空', '后羿', '鲁班7号']
# 2)列表.remove(元素) - 删除列表中的第一个指定元素
heroes = ['王昭君', '猪八戒', '孙悟空', '后羿', '猪八戒', '鲁班7号']
heroes.remove('猪八戒')
print(heroes) # ['王昭君', '孙悟空', '后羿', '猪八戒', '鲁班7号']
# 3)
# 列表.pop() - 取出列表中最后一个元素,并且返回(pop操作的结果就是从列表中取走的数据)
# 列表.pop(下标) - 取出列表中指定下标元素
heroes = ['王昭君', '猪八戒', '孙悟空', '后羿', '猪八戒', '鲁班7号']
result1 = heroes.pop()
print(heroes, result1) # ['王昭君', '猪八戒', '孙悟空', '后羿', '猪八戒']
3.列表的运算
# 1. 列表加法运算
# 列表1 + 列表2 - 将两个列表合并成一个新的列表
A = [10, 20, 30]
B = [100, 200]
C = A + B
print(C) # [10, 20, 30, 100, 200]
# 2. 列表乘法运算
# 列表 * N 、 N * 列表 - 将列表中的元素重复N次产生一个新的列表
C = A * 2 # A + A -> [10, 20, 30, 10, 20, 30]
print(C) # [10, 20, 30, 10, 20, 30]
# 3.in 和 not in
# 数据 in 列表 - 判断指定数据是否是列表中的元素
# 数据 not in 列表 - 判断指定数据是否不是列表中的元素
A = [10, 20, 30]
print(10 in A)
A = [10, [20, 30]]
print(20 in A) # False
# 4.列表相关函数: sum、max、min、sorted
# 1) sum(列表) - 求列表中所有元素的和(列表中的元素必须全部是数字)
A = [10, 20, 30]
print(sum(A)) # 60
# 2)max(列表) - 获取列表中最大元素
scores = [90, 34, 79, 99, 100, 77, 56, 67, 55]
print(max(scores))
print(min(scores))
# 3)
# sorted(列表) - 将列表中的元素从小到大排序,产生一个新的列表
# sorted(列表, reverse=True) - 将列表中的元素从大到小排序,产生一个新的列表
new_scores = sorted(scores)
print(new_scores) # [34, 55, 56, 67, 77, 79, 90, 99, 100]
new_scores = sorted(scores, reverse=True)
print(new_scores) # [100, 99, 90, 79, 77, 67, 56, 55, 34]