2012-06-22 43 views
-2
def a(): 
    """ Need to write something here.""" 

def test1(): 
    return a() 

def test2(x): 
    return x 

我想做到這一點在Python解釋:的Python:如何區別這兩種功能相互

test1() 

test2(a()) 

所以我需要做的是,我寫了(),以使這些兩個函數(test1(),test2(x))返回不同的結果。

例如,我想TEST1返回1號和TEST2以什麼方式彼此返回其他的東西,除了1號。

+3

有什麼不同? –

+3

咦?不太清楚,你能否詳細說明一下? – Levon

+2

不同?做任何事情的價值,它會不同,你需要更具體。 –

回答

2
import inspect 

def a(): 
    s = inspect.stack() 
    if s[1][3] == '<module>': 
     return "From test2" 
    else: 
     return "Not from test2" 
+2

呃......這是幹什麼的? – jathanism

+2

是的,我也不明白 –

+0

它看起來是否從模塊級別調用a()。但是,不是很好* imho *。 –