【笔记】Python 列表推导式(表达式 for 变量 in 列表 if 表达式 ) 执行顺序

列表推导式用于使用其他列表创建一个新列表。

一般形式:中括号内含一个表达式,然后是一个for语句,然后是 0 个或多个 for 或者 if 语句。

[表达式 for 变量 in 列表 if 表达式]  

 

执行顺序:

  • 各语句之间是嵌套关系
  • 左边第二个语句是最外层,往右为第二层,依此类推;
  • 左边第一条语句是最后一层

例:

[x*y for x in range(1,5) if x > 2 for y in range(1,4) if y < 3]
  • 第一层:左边第二个语句 for x in range(1,5) ;
  • 第二层: if x>2 ;
  • 第三层:for y in range(1,4)
  • 第四层:if y < 3
  • 最后一层:左边第一条语句 x*y

 

执行过程与下面的程序段等效:

for x in range(1,5)
    if x > 2
        for y in range(1,4)
            if y < 3
                x*y

 

更高级应用,可参考:python 循环高级用法 [expression for x in X [if condition] for y in Y [if condition] ... for n in N [if condition] ]按照从左至右的顺序,分别是外层循环到内层循环

 

---------end---------

  • 12
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值