只要学习过python列表推导式的小伙伴就应该知道它是将for循环执行之后的元素加起来生成一个列表,而在这个代码之中实际上是for循环结构的简写,那么也可以添加相对的if条件语句。以下就有详细的代码示例和解析,一起往下看看吧。

Python列表推导式怎么加if条件语句?Python列表推导式如何加if

number_list=[number*number for number in range(1,7) if number%2==0]

有些小伙伴可能看到这种结构的代码就已经有点头痛该如何去理解了,那么现在就将其拆解开来详细的讲解一下这段代码是如何执行的。

首先来看for循环语句,这里的for循环语句就是用range()函数生成2-6这五个数字。然后第一个number表示的是列表推导式之中所生成的元素,它会随着每一次的for循环迭代而变化,第二个number则是for循环变量映射到外部用来运算的值。简单点来说,for关键字前面的值就是它所返回后添加到列表中的值,可以将其看做如下代码:

for number in range(1,7):
  number_list.append(number*number)

这样展开来看就应该比较好理解了,那么if语句是可以添加在for语句前面或者后面的。当添加后面时就表示当每一次推导式计算完毕之后再用得出来的值去进行if条件的判断,转换成详细代码就是这样,示例如下:

for number in range(1,7):
  number = (number*number)
    if number %2 == 0:
      number_list.append(number)

那么将if条件语句房子for语句前面的话就是在进行推导式值计算之前就去判断number的值,只要理解为它们是将代码的顺序换了一下就可以了。

以上就是关于“Python列表推导式怎么加if条件语句?Python列表推导式如何加if”的全部内容了,希望对你有所帮助。

更多python相关文章请访问分类:python

【版权声明】本文图文出自大盘站@dapan.cc,转载请注明出处!