python中列表推导式的基本格式_python3基础之如何使用列表推导式

1.初识列表推导式

列表推导式是一种创建列表的方式,所以列表推导式的返回结果就是一个列表。列表推导式的基本结构如图:

乍一看有点懵,这怎么就变成了一个列表呢?看个测试例子:

例子中使用推导式生成了一个新的列表[2,4,6,8,10],这个结果是如何获得的呢?这么看还是很难理解,把式子的结构改一下就会很好理解:

这么改就看的很顺眼了,原来列表推导式的执行过程和for循环的执行过程是一样的。只不过表达式放到了for前面,并且表达式的结果直接作为新列表的元素。

2.带条件的列表推导式

列表推导式还能加上判断条件,让生成的列表更符合我们的需求。加上条件的推导式结构如下:

加上判断条件的推导式例子如下:

其实只要理解了推导式的基本形式,再来理解这个带条件的推导式就很容易了。到这里应该对列表推导式有了足够的认知了,是时候看看更复杂的推导式了。

3.多个for的列表推导式

列表推导式不是只能有一个for循环,使用多个for时相当于嵌套的for循环,在上面的例子的基础之上加个for循环:

例子中写了一个类似推导式执行过程的for循环,应该很容易理解在推导式中存在多个for循环时是如何执行的。

(注:例子中if(x > 3):不需要小括号,真的是c++的if写习惯了)。当然推导式中不是只有for可以有多个,if也是可以有多个的就像这样:

多个if的情况也相当于if的嵌套。可以参考推导式下方的for循环。如果没有把推导式中各部分框出来,推导式看上去还是很复杂的(把一堆代码放在一行上能不复杂吗?),所以对于推导式的使用还需要多多的练习才行啊。

你可能感兴趣的:(python中列表推导式的基本格式_python3基础之如何使用列表推导式)