編輯器不等于IDE(集成開發(fā)環(huán)境),開發(fā)
python
程序,不是只有一種
print()
打印輸出調(diào)試。
術(shù)業(yè)有專攻,于人如此,于一個軟件也是如此。讓專業(yè)的軟件做專業(yè)的事。
以上兩點得出的結(jié)論:PyCharm
我們以如下的一種常見錯誤,來演示如何通過PyCharm斷點追蹤的方式發(fā)現(xiàn)程序中的錯誤:
def foo(bar=[]):
bar.append('bar')
return bar
>>>foo()
['bar']
>>>foo()
['bar', 'bar']
>>>foo()
['bar', 'bar', 'bar']
這里存在一個常見的錯誤就是誤以為:函數(shù)在每次不提供可選形參時將參數(shù)設(shè)置為默認值,也就是本例中的
[]
,一個空的list。
這里我們便可以通斷點調(diào)試的方式進行追蹤,在每次函數(shù)調(diào)用(不顯示傳遞形參)時,觀察形參值的變化。
如圖所示為:
?
下圖是以這段為例,來演示如何發(fā)現(xiàn)程序中的bug:
解決方案:
def foo(bar=None):
if not bar:
bar = []
bar.append('baz')
return bar
>>>foo()
['baz']
>>>foo()
['baz']
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

