Python内联if语句执行两次函数吗?

Nov*_*ing 8 python

当我做类似的事情(完全随机的例子不读取变量名称):

variable = read_file() if read_file() else "File was empty"
Run Code Online (Sandbox Code Playgroud)

在这种情况下read_file()会被执行两次吗?如果是这样,有办法只执行一次,但保持在一行内?

jam*_*lak 21

在那种情况下read_file()会被执行两次.你可以这样做:

variable = read_file() or "File was empty"
Run Code Online (Sandbox Code Playgroud)