day 5 课程总结
列表相关操作
-
列表1 + 列表2 将两个列表拼接
list1 = [10, 20, 30] list2 = [100, 200] result = list1 + list2 print(result)
-
列表×n 或 n×列表:将列表中的元素重复n次
list1 = [10, 20, 30] print(list1 * 3)
-
比较运算:>、<、>=、<=、==、!=
-
比较相等:==、!=
list1 = [10, 20, 30] print(list1 == [10, 20, 30]) print(list1 == [20, 10, 30])
-
比较大小 两个列表比较大小,比较的是第一对不相等的元素大小
list1 = [10, 20, 30] list2 = [100, 200] print(list1>list2)
-
in和not in 判断指定列表中是否存在和不存在指定元素
print(10 in [10, 20, 30]) print(100 in [10, 20, 30]) print([10, 20] in [10, 20, 30]) print([10, 20] in [[10, 20], 30])
相关函数
相关函数(系统函数):sum、max、min、len、sorted(生成一个排好序的新列表)、list
list() 将其他数据(只有容器型数据)转换成列表
相关方法
-
清空列表:list.clear()
-
复制列表:list.copy() 复制指定列表,产生一个一样的新列表,将新的列表返回
若直接一个变量赋值给另一个变量,赋的是地址,两个变量同时指向一块内存区域 -
统计列表:列表.count() 统计列表中指定元素的个数
-
添加列表:列表.extend(序列) 将序列中所有的元素都添加到列表中去
与append的区别:list1 = [10,20,30] list1.extend(100,200) print(list1) list1.append(100,200) print(list1) list2 = [10,20,30] list2.extend('abc') print(list2) list2.append('abc') print(list2)
-
列表.index(元素) 获取元素在列表中对应的下标
只能获取列表中有的元素,否则报错
若列表中有多个,则返回第一个 -
倒序列表:列表.reverse()
-
排序列表:列表.sort() 将列表元素从小到大排序
列表.sort(reverse=True) 将列表元素从大到小排序
sorted(列表) 产生一个排序结果,原列表不变
列表推导式
列表推导式:创建列表的表达式,主要用于对元素进行变换和筛选
结构: 1. [表达式 for 变量 in 序列]
创建一个列表(让变量去序列中一个一个的取值,取一个就计算一 次表达式,表达式结果作为列表的元素)
将原序列中的元素按照制定的规则(表达式)进行统一变换得到一 个列表
例:
result = [i for i in range(10, 30) if i % 2]
print(result)
nums = [28, 10, 81, 301, 22]
# 将列表的所有元素*2,转换成一个新的列表:[56, 20, 262, 602, 44]
print([i * 2 for i in nums])
# 基于nums得到[8, 0, 1, 1, 2]
print([i % 10 for i in nums])
# 基于nums得到[Ture, Ture, False, False, Ture]
print([i < 60 for i in nums])
# 基于nums得到[81, 301]
print([i for i in nums if i >= 81])
list1 = [10, '12.3', 1.23, 20, 'abc', True]
# 基于list1,得到 [10, 20]
print([i for i in list1 if type(i) == int])
scores = [18, 89, 67, 90, 45, 34, 12, 89]
# 删除不及格分数
print([i for i in scores if i >= 60])
元组
元组(tuple):就是不可变的列表
将()作为元组的标志 (元素1, 元素2···)
不支持增删改;有序的
-
单个元素时:tk(21,) 必须在元素最后加一个逗号
-
除了增删改的操作,例表中的其他操作元组都能进行
-
相关函数(只要不改变原元组的值和顺序):sum、max、min、len、sorted、
-
相关方法(只要不改变原元组的值和顺序):count、inedx
t1 = (10, 20, 30) x, y, z= t1 print(x, y, z) a, b, c = 10, 20, 30 print(a, b, c) m, *n = t1 print(m, n) *w, z = t1 print(w, z)