关于python中if的这种语句用法该怎样理解

第二句是列表推导式。
【关于python中if的这种语句用法该怎样理解】 列表推导式(list comprehension)是利用其他列表创建新列表(类似于数学术语中的集合推导式)的一种方法。它的工作方式类似于for循环。

■网友
r =
这个是列表生成式的语法,大概意思就是
遍历lst这个列表,每个元素是x,如果x是1,那就把4放到r里,如果x不是1,那就把x放到st里

■网友
含义: 将 lst 中的元素复制到新的list中,在复制过程中,如果元素为str(1)则在新的list中对应为str(4)
使用基础知识点:列表推到式+三目运算
列表推到式完整语法:
translate和filter分别是python的函数或者是表达式
基本含义:使用list中满足filter条件的所有元素x,经过translate变换后的组成新的list
按示例
无filter(x),则表示使用所有list中元素
translate(x): \u0026#39;4\u0026#39; if x == \u0026#39;1\u0026#39;else x
三目运算语法: if_rt if condition else else_rt
基本含义: 如果condition条件为True则返回if_rt值否则执行else_rt值
按示例
\u0026#39;4\u0026#39; if x == \u0026#39;1\u0026#39;else x
如果x是str(1)则返回str(4)否则返回x

■网友
这个语法类似C语言中可以用三元操作符实现。
condition? statementA : statementB
python中的实现:
statementA if condition else statementB
关于python中if的这种语句用法该怎样理解


■网友
翻译成大白话就懂了
■网友
这种是列表推导式。
lst =
r =
为了便于语法上的理解可以参考下面这段代码
t =
for x in lst:
\tif x == \u0026#39;1\u0026#39;
\t\tt.append("4")
\telse:
\t\tt.append(x)
print t

■网友
这个是python的列表生成式,搜索关键词“列表生成式” “字典生成式”,都是python比较高效多写法

■网友
列表解析
定义和说明
列表推导式提供了一个创建链表的简单途径,无需使用 map() , filter() 以及 lambda 。以定义方式得到列表通常要比使用构造函数创建这些列表更清晰。每一个列表推导式包括在一个 for 语句之后的表达式,零或多个 for 或 if 语句。返回值是由 for 或 if 子句之后的表达式得到的元素组成的列表。如果想要得到一个元组,必须要加上括号。


    推荐阅读