列表的运算符
数学运算符:+、*
列表1 + 列表2
将两个列表中的元素合并产生一个新的列表
列表 * N 或 N * 列表
列表中的元素重复N次产生一个新的列表
比较运算符:
不同的类型可以是用==和!=来比较是否相等,但是不能使用>、<、>=、<=来比较大小
- ==、!=
- >、<、>=、<= (两个列表比较大小,比较的是第一对元素不相等的元素的大小)
列表的函数
- max、min
max(序列)
- 获取列表中最大的元素
min(序列)
- 获取列表中最小的元素 - sum
sum(数字序列)
- 求序列中所有元素的和 - sorted
sorted(序列)
- 将序列中的元素从小到大排序,产生一个新的列表
sorted(序列, reverse=True)
- 将序列中的元素从大到小排序,产生一个新的列表 - len
len(序列)
- 获取序列中元素的个数 - list
list(序列)
- 将序列的元素作为列表的元素创建一个新的列表
列表的方法
列表.clear()
- 清空列表列表.copy()
- 复制列表产生一个一样的新列表列表.count(元素)
- 统计列表中指定元素的个数列表.extend(序列)
- 将序列中的元素全部添加到列表中列表.index(元素)
- 获取元素在列表中的下标值(0开始的下标值)
如果元素有多个,则返回第一个的下标;如果元素不存在,则报错(ValueError: x is not in list)列表.reverse()
- 列表倒序列表.sort()
/列表.sort(reverse=True)
- 列表排序
列表推导式 - 快速创建列表的表达式
推导式结构1
[表达式 for 变量 in 序列]
让变量去序列中取值,一个一个的取,取完为止,每取一个值就将表达式的值作为列表的一个元素
推导式结构2
[表达式 for 变量 in 序列 if 条件语句]
元组(tuple)
- (元素1,元素2,元素3,…)
- 不可变的;有序
- 元组就是不可变的列表
- 查、in和not in、数学运算、比较运算、相关函数 - 元组都支持
-
使用多个变量同时获取列表或者元组的元素
要求变量的个数必须和元组/列表元素的个数保持一致
t1 = (10, 20, 30, 40)
a, b, c, d = t1
print(a, b, c, d)
- 使用多个变量同时获取列表或者元组的元素
当变量的个数小于元素的个数的时候,必须在某一个变量前加*
student = ("小明", 18, "男", 89, 78)
*x, y = student
print(x, y)
- 元组在没有歧义的情况下,()可以省略
t2 = 10, 20, 30
print(t2, type(t2))
补充:三目运算符
格式: 值1 if 表达式 else 值2
如果表达式的值为True结果为值1,否则结果为值2
练习
- 使用列表推导式获取nums中所有的个位数
nums = [56, 89, 64, 63]
nums = [i % 10 for i in nums]
print(nums)
- 已知分数列表,将列表中的元素全部换成"及格"或者"不及格"
scores = [98