Putting an if-elif-else statement on one line?没有给我足够的信息来解决我的问题。我想转
if pointer == 0:
quit(print("ERROR:POINTER VALUE < 0"))
else:
pointer -=1
到一行if语句中,所以我可以把它放在exec()
语句中。请详细说明链接问题中提供的信息
答案 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
在你的情况下,这可能不是最好的决定,因为你的生产线会长得很长。