首页博客网络编程
列表1 + 列表2
验证:
num1 = [1, 2]num2 = [3, 4]print(num1 + num2)123
验证结果:
列表 * N 或 N * 列表
验证:
num = [1, 2]print(num * 2)12
验证结果:
列表1 == 列表2 或 列表1 != 列表2
验证:
num1 = [1, 2]num2 = [3, 4]print(num1 == num2)123
验证结果:
列表1 > 、< 、>=、<= 列表2
验证:
num1 = [1, 2, 3]num2 = [3, 4]num3 = [1, 0, 3]print(num1 > num2)print(num1 > num3)12345
验证结果:
***注:***列表不能与其他类型数据比较
元素 in 列表
元素 not in 列表
验证:
num = [1, 2]print(1 in num)print(2 not in num)print(1 not in num)1234
验证结果:
max(序列)
min(序列)
验证:
scores = [90, 89, 23, 67, 99, 96, 56, 78, 91, 45]print(max(scores))print(min(scores))123
验证结果:
***注:***序列中的元素之间必须支持比较大小的操作,否则会报错。
不用 max 和 min 函数求最大值和最小值
scores = [90, 89, 23, 67, 99, 96, 56, 78, 91, 45]a = scores[0] # 假设第一个值最大 b = scores[0] # 假设第一个值最小for x in scores[1:]: # 列表里第一个值不用跟自己进行比较,从第二项开始(切片) if x > a: # 当遍历列表的值比 a 大 a = x # 将比 a 大的值赋值给 a elif x < b: # 当遍历列表的值比 b 小 b = x # 将比 b 小的值赋值给 bprint(a, b) # 输出最值123456789
验证结果:
sum(数字序列)
验证:
scores = [90, 89, 23, 67, 99, 96, 56, 78, 91, 45]print(sum(scores2))12
验证结果:
***注:***序列必须是数字序列,即序列中的元素都为数值。
sorted(序列)
sorted(序列,reverse=True)
***注:***序列里的元素之间能够比较大小且类型一致才能排序
验证:
scores = [90, 89, 23, 67, 99, 96, 56, 78, 91, 45]new_scores = sorted(scores)new_scores2 = sorted(scores,reverse=True)print(scores2)print(new_scores)print(new_scores2)123456
验证结果:
len(序列)
list(数据)
***注:***所有的序列可以转换成列表,将序列中的元素作为列表中的元素,并创建列表;
for 变量1, 变量2 in enumerate(列表)
变量1是元素的下标;
变量2是每个元素。
验证:
num = [10, 20, 30]for x, y in enumerate(num): print(x, y)123
验证结果:
append
语法:列表.append()
clear
语法:列表.clear()
remove
语法:列表.remove()
copy
语法:列表.copy()
注:
验证:
list1 = [10, 20]list2 = list1 list3 = list.copy list1.append(10)print(list1, list2, list3)print(id(list1), id(list1), id(list1))
验证结果:
1
2
3
4
5
6
如果直接用一个变量给另一个变量赋值,赋的是内存地址。赋值后两个变量关联的是同一个数据。
列表[ : ] 、列表*1 、列表+[] 的功能和 列表.copy() 的功能一样
count
语法:列表.count(元素)
extend
语法:列表.extend(序列)
index
语法:列表.index(元素)
注:
如果要查询的元素在列表中不存在,会报错;
如果要查询的元素在列表中存在多个,则获取最前面出现的元素下标值。
reverse
语法:列表.reverse()
sort
语法:列表.sort()
列表.sort(reverse=True)
注:
sort 只能对列表进行升序操作;
sort 直接修改原列表中元素的顺序,不产生新列表;
创建列表的快捷方式
语法1:[表达式 for 变量 in 序列]
***注:***表达式可以是任意有结果的表达式,不能是赋值语句。
验证:
list1 = [10 for x in range(3)]print(list1)12
验证结果:
语法2:[表达式 for 变量 in 序列 if 条件语句]
验证:
nums = [1, 2, 3, 4, 5, 6]list1 = [x for x in nums if x % 2]print(list1)123
验证结果:
语法3:[三目运算符 for 变量 in 序列]
三目运算符:语法 — 表达式1?值1 if 表达式 else 值2
验证:
nums = [20, 34, 33, 6, 15, 7, 20]nums2 = [x * 2 if x % 2 else x / 2 for x in nums]12
验证结果:
版权声明:本文为CSDN博主「weixin_42194865」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42194865/article/details/120422310
声明提示:若要转载请务必保留原文链接,申明来源,谢谢合作!
广告位
广告位