Python 2.7 python赋值和逻辑求值一行程序

Python 2.7 python赋值和逻辑求值一行程序,python-2.7,Python 2.7,我想执行以下伪代码概念: if easy_to_eval_var or (r = heavy_func()): . . . do_something_with_heavy_func_output(r) Python无法对语句求值(与C不同),因此这种语法将无法工作。 是否存在一个单行表达式,即: 可读的 除非需要,否则不会计算重函数() 将结果保存到变量(无需额外调用heavy\u func()) 如果easy\u eval\u var是真的,那么你的代码中会有

我想执行以下伪代码概念:

if easy_to_eval_var or (r = heavy_func()):
    .
    .
    .
    do_something_with_heavy_func_output(r)
Python无法对语句求值(与C不同),因此这种语法将无法工作。 是否存在一个单行表达式,即:

  • 可读的
  • 除非需要,否则不会计算重函数()
  • 将结果保存到变量(无需额外调用
    heavy\u func()

  • 如果
    easy\u eval\u var
    是真的,那么你的代码中会有什么?看起来您可能想要
    r=easy_to_eval或heavy_func();如果r:…
    我将代码分成两条语句:
    r=None if easy\u-to\u-eval\u-var else-heavy\u-func()如果easy\u-to\u-eval\u-var或r:do\u-something\u-with\u-heavy\u-func\u-output(r)