2013-08-31 27 views
1

我使用pydev進行python開發的Eclipse。我想用pydev的交互式python控制檯測試我的代碼。當我在代碼中進行更改時,交互式pydev控制檯不會注意到它,並且我必須關閉當前的pydev控制檯並打開一個新的以反映這些更改。是否有更簡單的方法來獲取當前活動控制檯的更改?也許重啓按鈕?如何在代碼更改後重新啓動pydev交互式控制檯?

+0

你在哪裏寫你的Python邏輯?在交互式終端或源文件中,然後使用PyDev運行? –

+0

在一個源文件中。我定義了類,函數等,然後在pydev交互式控制檯中輸入語句來測試代碼。 – alwbtc

回答

3

好吧,我發現一個很酷的方式來做到這一點。每當你啓動一個新的Pydev控制檯時,選擇控制檯爲當前活動編輯器

內的交互式控制檯類型Python提示符下

execfile('<full_path_to_your_python_script>') 

現在你可以在你的腳本代碼實驗。

如果更改文件(如方法或類定義)內的東西,然後再相同 Pydev的控制檯內執行的execfile聲明。這將重新加載當前活動的編輯器文件,您現在可以訪問修改後的代碼。

注意:我想這種行爲是因爲Python中的導入活動是冪等的 - 即一個模塊只能導入一次。導入後,該模塊的任何後續導入都會引用並返回以前導入的模塊實例。獲得模塊最新定義的唯一方法是使用reload('module_name')方法。我想這就是execfile所做的 - 它重新加載對應於當前活動編輯器文件的python模塊。

+0

請注意,Ctrl + Alt + Enter可以爲您執行execfile。需要注意的是,計劃進行集成(https://github.com/fabioz/Pydev/pull/40),因爲這不是必需的,所以請留意新發布的備忘錄... –

0

做一個CTRL + ALT +編碼窗口中輸入(開放與否控制檯),你會自動加載當前的代碼使用。

+0

這並不意味着,使用Eclipse Kepler和PyDev以及最新的更新爲我工作。 – 2014-08-01 22:07:38

相關問題