关于python中一行if else语句的更多信息

More info on one line if-else statements in python

把if-elif-else语句放在一行上?没有给我足够的信息来解决我的问题。我想转身

1
2
3
4
if pointer == 0:
    quit(print("ERROR:POINTER VALUE < 0"))
else:
    pointer -=1

放到一行if语句中,这样我就可以把它放在exec()语句中。请详细说明链接问题中提供的信息


可以使用三元运算符。

这里有一个更好的解释-python是否有三元条件运算符?

在这里阅读维基百科条目-https://en.wikipedia.org/wiki/%3f:

基本上,这是一种在只有两个可能的布尔比较结果时编写条件的方法。它非常适合非常短的线路。

例如:

1
2
x = 5 if True else x = 4
x = 1 if x == 0 else y = 10/x

在你的情况下,这可能不是最好的决定,因为你的路线会很长。


exec实际上不需要它的论点在一行中。您可以将它传递为多行字符串。

1
2
3
4
exec('if a:
 print("true")
else:
 print("false")')