可能重复:
How to assign a variable in IF, and then return it. (Python)
在Python中有更好的方法吗?:
myVal = getVal()
if not myVal:
continue
我想做这样的事情:
if not (myVal = getVal()):
continue
但这不是有效的语法。有没有其他方法可以在一行中执行此操作,如可以在PHP和Perl中完成?
答案 0 :(得分:3)
对于赋值的返回值,它不是pythonic。在python中,赋值意味着将对象绑定到名称,而不是将值放在内存位置。
答案 1 :(得分:1)
不,你不能这样做。
我想这是因为它太容易与if not (myVal == getVal()):
混淆。
答案 2 :(得分:0)
不,你不能这样做。
然而,几乎所有这样的情况都可以在python中更干净地完成。但是,为了向您展示如何做到这一点,我们需要更多的上下文。特别是,你如何继续这个循环。
答案 3 :(得分:0)
你可以试试这个,(取决于getVal
可以返回的内容):
if not getVal():
continue