有关python中if-else语句的更多信息

时间:2017-08-10 17:42:37

标签: python-3.x

Putting an if-elif-else statement on one line?没有给我足够的信息来解决我的问题。我想转

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

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

2 个答案:

答案 0 :(得分:0)

exec实际上并不需要将其参数放在一行中。你可以传递一个多行字符串。

exec('if a:\n print("true")\nelse:\n print("false")')

答案 1 :(得分:0)

您可以使用三元运算符。

这是一个更好的解释 - Does Python have a ternary conditional operator?

在此处阅读维基百科条目 - https://en.wikipedia.org/wiki/%3F

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

例如:

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

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