结合for循环、if条件语句对列表进行运算

对列表每个元素均加/减/乘/除一个数

list1=[1,2,3,4]
print("原列表\n",list1)
add_list1=[x+5 for x in list1]
print("列表每个元素均加5\n",add_list1)
sub_list1=[x-5 for x in list1]
print("列表每个元素均减5\n",sub_list1)
multi_list1=[x*5 for x in list1]
print("列表每个元素均乘5\n",multi_list1)
divi_list1=[x/5 for x in list1]
print("列表每个元素均除5\n",divi_list1)
原列表
 [1, 2, 3, 4]
列表每个元素均加5
 [6, 7, 8, 9]
列表每个元素均减5
 [-4, -3, -2, -1]
列表每个元素均乘5
 [5, 10, 15, 20]
列表每个元素均除5
 [0.2, 0.4, 0.6, 0.8]

对列表元素同时进行两种运算后生成嵌套列表

list1=[1,2,3,4]
print("原列表\n",list1)
sec_list1=[[x, x**2] for x in list1]#对列表元素进行两种运算
print("嵌套列表\n",sec_list1)
原列表
 [1, 2, 3, 4]
嵌套列表
 [[1, 1], [2, 4], [3, 9], [4, 16]]

#以上例子也相当于

sec_list1=[]
for i in list1:
    list2=[]
    list2.append(i)
    list2.append(i**2)
    sec_list1.append(list2)
print("嵌套列表\n",sec_list1)
嵌套列表
 [[1, 1], [2, 4], [3, 9], [4, 16]]

对符合条件的列表元素进行运算

list1=[1,2,3,4]
print("原列表\n",list1)
con_list1=[3*x for x in list1 if x > 2]#对列表元素中大于2的元素乘以3,形成新的列表
print("对符合条件的列表元素进行运算形成的新列表\n",con_list1)
原列表
 [1, 2, 3, 4]
对符合条件的列表元素进行运算形成的新列表
 [9, 12]

两个列表间的加减乘除运算

#实现每个列表元素逐一与另一个列表元素逐一进行运算,因此产生的新列表总元素数量是len(list1)*len(list2)

list1=[1,2,3,4]
list2=[5,5,5,5]
add_list=[x+y for x in list1 for y in list2]
sub_list=[x-y for x in list1 for y in list2]
multi_list=[x*y for x in list1 for y in list2]
divi_list=[x/y for x in list1 for y in list2]
print("两个列表元素互相逐一相加后形成的新列表\n",add_list)
print("两个列表元素互相逐一相减后形成的新列表\n",sub_list)
print("两个列表元素互相逐一相乘后形成的新列表\n",multi_list)
print("两个列表元素互相逐一相除后形成的新列表\n",divi_list)
两个列表元素互相逐一相加后形成的新列表
 [6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]
两个列表元素互相逐一相减后形成的新列表
 [-4, -4, -4, -4, -3, -3, -3, -3, -2, -2, -2, -2, -1, -1, -1, -1]
两个列表元素互相逐一相乘后形成的新列表
 [5, 5, 5, 5, 10, 10, 10, 10, 15, 15, 15, 15, 20, 20, 20, 20]
两个列表元素互相逐一相除后形成的新列表
 [0.2, 0.2, 0.2, 0.2, 0.4, 0.4, 0.4, 0.4, 0.6, 0.6, 0.6, 0.6, 0.8, 0.8, 0.8, 0.8]

#实现两个列表元素互相运算(按索引)

list1=[1,2,3,4]
list2=[5,5,5,5]
op_list=[list1[i]*list2[i] for i in range(len(list1))]
print("两个列表元素按索引互相运算后的列表\n",op_list)
两个列表元素按索引互相运算后的列表
 [5, 10, 15, 20]

遍历列表

一般可以使用for循环遍历列表元素

#逐一遍历列表元素

list1=[1,2,3,4]
for i in list1:
    print(i)
1
2
3
4

#遍历列表元素并输出对应元素索引

list1=[5,6,7,8]
for i, v in enumerate(list1):
    print("列表元素索引",i,"对应元素",v)
列表元素索引 0 对应元素 5
列表元素索引 1 对应元素 6
列表元素索引 2 对应元素 7
列表元素索引 3 对应元素 8
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐