Python函数返回元组
我有一个 python 函数,它返回一个带有布尔值和字符串的元组
def check_something():
...
return bool_value, str_messsage
有没有办法可以在if使用布尔值的语句中使用此函数的输出并将字符串值分配给if语句中的变量
if not check_something():
...
回答
if (result := check_something())[0]:
var = result[1]
这使用了“海象运算符”,这是 Python 3.8 中引入的新语法。你可以在这里阅读:https : //realpython.com/python38-new-features/#the-walrus-in-the-room-assignment-expressions。
对于 Python 3.7 及更低版本,您必须额外添加一行:
bool_val, str_message = check_something()
if bool_val:
var = str_message