for表达式
for表达式用于其他区间,元组,列表等可迭代对象创建新的列表。for表达式的语法格式如下:
[表达式 for 循环计数器 in 可迭代对象]

​ for表达式与普通for循环的区别有两点:

  1. for关键字之前定义一个表达式,该表达式通常会包含循环计数器。
  2. for表达式没有循环体,因此没有冒号。

​ for表达式当然是有循环的,同样可以对可迭代对象进行循环,可迭代对象包含几个对象,该循环就对for之前的"表达式"执行几次(相当于for之前的表达式就是循环体),并将每次执行的值收集起来作为新的列表元素。
​ for表达式最终返回的是列表,因此for表达式也被称为列表推导式。例如:

Python笔记----for表达式

​ 也可以在for表达式后添加if语句,此时只执行满足if语句的循环。

​ 如果将for表达式的方括号改为圆括号,for表达式将不再生成列表,而是生成一个生成器(generator),该生成器同样可以使用for循环迭代。
​ 对于是用圆括号的for表达式,他最终返回的是生成器,因此这种for表达式也被称为生成器推导式。例如:

Python笔记----for表达式

​ for表达式可使用多个循环,就像嵌套循环那样。例如:

Python笔记----for表达式

相当于:
Python笔记----for表达式

相关文章: