当前分类:python>>正文

python算法例19:列表推导式

来源:互联网   时间:2022年6月15日   编辑

列表推导式在实际编程使用中还是比较多的,可以节省代码量,看得也非常直观。

今天的一道入门类型的列表推导式题。

先看题目描述:

给你两个列表,list_1和list_2,列表中的元素量是一样的,你需要通过列表推导式得到下面结果:

1.将两个列表里的每个值分别进行相乘

2.将两个列表里的每个值分别进行相加

3.将两个列表里的值对应相乘

样例:

给你

[2,4,6]

[3,5,7]

输出结果如下:

[6, 10, 14, 12, 20, 28, 18, 30, 42]
[5, 7, 9, 7, 9, 11, 9, 11, 13]
[6, 20, 42]

下面是我的给出的代码:

def list_expression(list_1: list, list_2: list):
    
    print([x*y for x in list_1 for y in list_2])
    print([x+y for x in list_1 for y in list_2])
    print([x*y for x,y in zip(list_1,list_2)])

应该是比较好理解的。
最后一个推导式,用到了zip方法,这个方法主要将两个列表进行打包成一个新的列表
比如zip(list_1,list_2)的结果如下:
[(2,4,6),(3,5,7)]
然后用x、y变量对里面的两个元组分别进行遍历。

[猜你喜欢]

标签: python