如果标题有点模糊,我想做的一个例子是:
print("Status: " + if serverIsOnline: "Online" else: "Offline")
我知道这是不合适的,但我要做的是检查serverIsOnline
是否True
然后打印Status: Online
其他Status: Offline
。我知道这是可能的,我已经看到它完成了,但我不记得它是如何完成的。
这是一个较短的等价物:
if serverIsOnline:
print("Status: Online")
else:
print("Status: Offline")
有人可以刷新我吗?
答案 0 :(得分:3)
您要找的是conditional expression(也称为'三元'表达式,通常带有 ?
运算符,被其他许多人使用语言)。
print("Status: " + "Online" if serverIsOnline else "Offline")
语法:True if condition else False
答案 1 :(得分:1)
只要指定if/else
(else
只是一个SyntaxError),Python就允许内联if
。大多数Python程序员将此称为三元组:
>>> server_online = True
>>> print('Status: ' + ('Online' if server_online else 'Offline'))
Status: Online
>>> server_online = False
>>> print('Status: ' + ('Online' if server_online else 'Offline'))
Status: Offline
>>> print('Status: ' + 'Online' if server_online)
File "<stdin>", line 1
print('Status: ' + 'Online' if server_online)
^
SyntaxError: invalid syntax