2015-04-30 23 views
1

下面的文件都保存在同一個 'CurrenDir' 位置:雨棚/ Python中充當的變化不保存

TestImport.py

import sys 
sys.path.append('whatever') 
from testdef import * 

what='Hey'  
test(what) 

testdef.py

def test(what): 
    print what + ' you!' 

正如預期的那樣運行TestImport.py打印:

Hey you! 

現在我改變,testdef.py保存到:

def test(what): 
    print what + ' you???????' 

因爲不期望運行TestImport.py打印:

Hey you! 

編輯:但是,如果我重新啓動雨棚的變化被合併!

爲什麼?

+0

也就是說篷時的問題,而不是蟒蛇,它正致力於空閒和崇高的罰款。 – ZdaR

回答

0

我期待着一個更完整的答案,但這裏的事實:

1)來源:https://docs.python.org/2/tutorial/modules.html

「爲了提高效率,每個模塊僅每解釋器會話中導入一次。因此,如果您更改模塊,則必須重新啓動解釋器 - 或者,如果它只是一個要交互測試的模塊,請使用reload(),例如,重新加載(MODULENAME)「。

2)解決方法:reload(testdef)