2015-10-12 256 views
0

在MatLab中,除非添加;在該行的最後,我可以運行,看看這段代碼在做什麼。例如,如果我的代碼在運行時查看python中所有變量的值

x=0 
for i=1:1:3 
    x=x+1 
end 

然後我會看到出現在窗口

x=0 
x=1 
x=2 
x=3 

這樣,我可以看到我的代碼的過程,所以我可以很容易地修復錯誤。

我如何在Python中做同樣的事情?

我知道我可以再補充打印做到這一點像

for i in list 
    print('i is:', i) 
    i=i+1 

但是,這使得整個代碼太亂了。有沒有像MatLab一樣的方式來做到這一點?

+0

你使用編輯器,或者,我們祈禱,用於編寫你的Python的IDE? –

+0

@Shawn_Mehan謝謝!我只是用一個編輯器使用note ++或sublime文本。感謝您的提示,我搜索了Python IDE並找到了很好的頁面。哪個python IDE具有在運行時顯示變量的功能? (最好只是變量的特定部分,如果它太大)。 – user1849133

+0

相關:['macropy.tracing'](https://github.com/lihaoyi/macropy#tracing) – jfs

回答

1

我對matlab並不熟悉,但從你的解釋中,你似乎想跟蹤你的代碼,看看錯誤出現在哪裏?你可以通過pdbtrace來做到這一點。

讓我知道這是你在找什麼。

這裏是一個快速的how-to如何使用您的代碼示例使用pdbtrace:

import pdb 
l = [1, 2, 3, 4] 
pdb.set_trace() 
for i in l: 
    print('i is:', i) 
    i = i+1 

所以,當你運行它,你便要控制應用流程的能力。您在代碼中的下一步中點擊'n',您可以看到它在做什麼。

我強烈建議讀這篇文章,因爲它是一個很好的教程:

https://pythonconquerstheuniverse.wordpress.com/2009/09/10/debugging-in-python/

而且,我居然建議甚至更多,使用具有完整功能的調試器的IDE。我偏愛PyCharm,你可以在這裏免費下載:https://www.jetbrains.com/pycharm/download/

+1

謝謝!這個包本身看起來是值得的。只要PyCharm的值在運行代碼時發生變化,PyCharm會向我顯示變量的值? – user1849133

+1

是的。您可以在變量甚至表達式上設置「watch」。此外,PyCharm在您瀏覽程序時可以很好地顯示範圍內的變量。 –

相關問題