2017-05-13 53 views
1

Python線剖析的常用解決方案似乎是kernprof -l script.py,這需要在要配置的函數中添加「@profile」裝飾器。如果沒有python script.py而運行相同的代碼,則會投訴「名稱」配置文件「未定義」,因此您必須註釋掉@profile行。在「profile」模式和非profile模式之間切換,而不必註釋掉這些行是一個很好的解決方法?在線剖析時註釋掉@profile裝飾器

回答

2

你可以嘗試在你的腳本的頂部添加這樣的事情:

try: 
    profile # throws an exception when profile isn't defined 
except NameError: 
    profile = lambda x: x # if it's not defined simply ignore the decorator. 

這樣,你定義profile功能無操作裝飾,如果它沒有定義。