python5.5-数据容器-列表的合并以及列表推导式
合并列表
方法1:通过*进行解包
num_list1 = [19,23,45,20,567,78,82,67,41,71,57] num_list2= [20,15,55,78,215,742,82,19] # 合并列表 #解包:将列表这一类容器解开成一个一个独立的元素 #组包:将多个值合并到一个容器 num_list = [*num_list1, *num_list2]方法2:通过+号合并
num_list1 = [19,23,45,20,567,78,82,67,41,71,57] num_list2= [20,15,55,78,215,742,82,19] # 合并列表 num_list = num_list1 + num_list2如何判断一个元素是否存在于列表中
可使用in运算符,语法为:元素 in 列表。返回结果为bool,True表示存在。False表示不存在
num_list1 = [19,23,45,20,567,78,82,67,41,71,57] num_list2= [20,15,55,78,215,742,82,19] #1 合并列表 # for num in num_list1: # num_list2.append(num) #解包:将列表这一类容器解开成一个一个独立的元素 #组包:将多个值合并到一个容器 num_list = [*num_list1, *num_list2] #2 去除重复数据 new_list = [] for num in num_list: if num not in new_list: new_list.append(num) print(new_list)列表推导式
- 含义:列表推导式就是按照一定规则快速生成一个列表的方法
- 格式1:列表名称=[要插入列表的数据 for i in 列表]
- 格式2:列表名称=[要插入列表的数据 for i in 列表 if 条件]
#生成1-20的平方列表 #方式一:传统方式 num_list = [] for i in range(1,21): num_list.append(i**2) print(num_list) #方式二:列表推导式--->就是按照一定的规则快速生成一个列表的方法---->语法格式1:[需要插入的值 for i in 序列/列表] num_list2 = [i**2 for i in range(1,21)] print(num_list2) #从一个数字列表中提取所有的偶数,并计算其平方,组成一个新的列表 # 列表推导式--->语法格式2:[需要插入的值 for i in 序列/列表 if 条件] num_list3 = [12,32,34,77,80,33,67,23,190,100,66,88] new_list = [i**2 for i in num_list3 if i%2==0] print(new_list)