一个函数可以知道它是如何被调用的吗?

Seb*_*Seb 5 python

有没有办法在函数内知道函数是自己调用还是赋值给=的变量?

我想做这样的事情:

def func():
    if 'assigned with equal':
        return 5
    else:
        print 'not assigned'
Run Code Online (Sandbox Code Playgroud)

那将产生这些产出:

func()
-> 'not assigned'
a = func()
a
-> 5
Run Code Online (Sandbox Code Playgroud)