【发布时间】:2015-06-13 02:58:11
【问题描述】:
我想做这样的事情:
def f():
if assignment_requested: return "Return something"
else: print "Return nothing"
应该给出:
>>> f()
Return nothing
>>> a = f()
>>> print a
Return something
我找不到任何方法来检查该函数是单独调用f() 还是用于分配变量a=f()。 有没有办法做到这一点?
例如,在 Matlab 中,可以使用if nargout>0。
【问题讨论】:
-
这有什么关系?如果不使用返回值,您认为会发生什么情况?
-
@user,一件事是它在屏幕上打印,这可能很烦人。第二件事是,您可能希望函数根据是否使用返回来实际执行不同的操作。
-
Python 只在交互式提示符下将值打印到屏幕上,如果你想抑制它,你可以做类似
_ = whatever()而不是whatever()。
标签: python