Python 用于列表理解的if和else
我想在Python的列表理解中执行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
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 ]