Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 用于列表理解的if和else_Python_List_If Statement_Conditional - Fatal编程技术网

Python 用于列表理解的if和else

Python 用于列表理解的if和else,python,list,if-statement,conditional,Python,List,If Statement,Conditional,我想在Python的列表理解中执行if语句和else语句。我该怎么做 我算出了x中z的y=[int(bool(z)],但我想知道您是否可以在列表中同时执行if和else语句 您可以在列表的左侧执行此操作(即for关键字前面的语句: #!/usr/bin/python x = [0, 2, 1, 1, 1, 1, 3, 3, 5, 1, 1, 4, 1, 2, 1, 2, 2, 2, 1, 7, 2, 1, 0, 3, 1, 1, 2, 0, 1, 0, 1, 1] y = [1 for z

我想在Python的列表理解中执行
if
语句和
else
语句。我该怎么做


我算出了x中z的
y=[int(bool(z)]
,但我想知道您是否可以在列表中同时执行
if
else
语句

您可以在列表的左侧执行此操作(即
for
关键字前面的语句:

#!/usr/bin/python

x = [0, 2, 1, 1, 1, 1, 3, 3, 5, 1, 1, 4, 1, 2, 1, 2, 2, 2, 1, 7, 2, 1, 0, 3, 1, 1, 2, 0, 1, 0, 1, 1]

y = [1 for z in x if z > 0]

#WANT TO DO
#y = [1 for z in x if z > 0 else 0]

是的,这里有一个例子:

y = [1 if z > 0 else 0 for z in x]

thread还提供了一些关于它的详细信息。

你的意思是
[1如果z>0,那么x中的z为0]
?条形图中foo的
右侧的表达式用于过滤,左侧的表达式用于映射。更好的重复:该“thread”是一个清晰的重复,请这样标记。
y = [1 if z > 0 else 'test' for z in x ]