97超碰碰碰_91热播_91国产免费视频_91视频合集_国产精品白丝jk白祙_国产精品久免费的黄网站

您現(xiàn)在所在的位置:首頁 >關于奇酷 > 行業(yè)動態(tài) > Python培訓,用 print 輸出來調(diào)試代碼的方法過時了!

Python培訓,用 print 輸出來調(diào)試代碼的方法過時了!

來源:奇酷教育 發(fā)表于:

奇酷教育-Python培訓_Python教程_Python基礎教程

       很多時候我們在學Python培訓時老師都會教我們在Python編程中用print 輸出來調(diào)試代碼,但是奇酷今天想要告訴你的是這種方法過時了,現(xiàn)在大家都在用PySnooper,你可知道?

4 月 23 日,GitHub 每日趨勢榜第一位是一個 Python 相關項目:PySnooper。

該項目很快獲取 2200 Star。

PySnooper 是個什么東西?

Python培訓,用 print 輸出來調(diào)試代碼的方法過時了!

如果你寫的 Python 代碼不能按如期那樣運行,你會絞盡腦汁想為啥出錯了。雖然你希望有支持斷點的成熟調(diào)試器,但或許你現(xiàn)在不想去設置這樣的調(diào)試器。

你想知道哪些行代碼是正常運行,哪些行不正常。據(jù)說大多數(shù)人會在可疑位置使用 print 輸出語句。

其實 PySnooper 的作用有點類似,你不用小心謹慎地用 print 輸出語句,只需在想調(diào)試的函數(shù)中引入一個裝飾器。然后得到函數(shù)的詳細日志,包括運行了哪些行、何時運行,以及何時更改了局部變量。

為什么 PySnooper 能從其他智能調(diào)試工具中脫穎而出?

因為你可以在不需要進行任何設置的情況下將其用于糟糕的、龐大的企業(yè)代碼庫中。只需打開裝飾器(如下示例所示),并將輸出重定向到一個專用的日志文件,將日志文件路徑指定為第一個參數(shù)。

使用范例

范例是一個把數(shù)字轉(zhuǎn)成二進制的函數(shù)。

 

import pysnooper

@pysnooper.snoop()
def number_to_bits(number):
    if number:
        bits = []
        while number:
            number, remainder = divmod(number, 2)
            bits.insert(0, remainder)
        return bits
    else:
        return [0]

umber_to_bits(6)

輸出范例

 

Starting var:.. number = 6
21:14:32.099769 call         3 @pysnooper.snoop()
21:14:32.099769 line         5     if number:
21:14:32.099769 line         6         bits = []
New var:....... bits = []
21:14:32.099769 line         7         while number:
21:14:32.099769 line         8             number, remainder = divmod(number, 2)
New var:....... remainder = 0
Modified var:.. number = 3
21:14:32.099769 line         9             bits.insert(0, remainder)
Modified var:.. bits = [0]
21:14:32.099769 line         7         while number:
21:14:32.099769 line         8             number, remainder = divmod(number, 2)
Modified var:.. number = 1
Modified var:.. remainder = 1
21:14:32.099769 line         9             bits.insert(0, remainder)
Modified var:.. bits = [1, 0]
21:14:32.099769 line         7         while number:
21:14:32.099769 line         8             number, remainder = divmod(number, 2)
Modified var:.. number = 0
21:14:32.099769 line         9             bits.insert(0, remainder)
Modified var:.. bits = [1, 1, 0]
21:14:32.099769 line         7         while number:
21:14:32.099769 line        10         return bits
21:14:32.099769 return      10         return bits
  以上就是奇酷為大家分享的“Python培訓,用 print 輸出來調(diào)試代碼的方法過時了!”謝謝大家觀看,如果對Python感興趣的話,想學Python培訓的,也可以在線咨詢,我們將竭誠為你解答。
主站蜘蛛池模板: 成人精品国产亚洲欧洲 | 久久亚洲国产精品一区二区 | 中文字幕天天躁日日躁狠狠躁 | 国产精品国产亚洲区艳妇糸列短篇 | 色噜噜一区二区三区 | 男人女人做爽爽18禁网站 | 91精品国产综合久久欧美 | 国产精品涩涩涩视频网站 | 岛国大片激情做爰视频 | 久久久久激情免费观看 | 男人添女人下面视频 | 亚洲丝袜在线观看 | 亚洲国产一区在线二区三区 | 国产成人无码a区在线 | 四虎av永久在线精品免费观看 | 亚洲 欧美 中文 在线 视频 | 欧洲丰满少妇做爰视频爽爽 | 一级成人a做片免费 | 亚洲中文字幕特级毛片 | 亚洲色图欧美偷拍 | 国产乱了真实在线观看 | 亚洲中文字幕久久精品无码喷水 | 黑人又大又粗又长又深受不了 | 欧美一级美片在线观看免费 | 台湾综合性中文娱乐网 | 国产高清精品毛片基地 | 凹凸在线无码免费视频 | 在线观看的黄网 | 国产精品视频免费的 | 色综合亚洲| 在线亚洲免费 | 亚洲国产成人精品无码区二本 | 久久久久99精品国产片 | 国产精品久久久久7777按摩 | 我想看一级毛片免费的 | 黄色一级毛片看一级毛片 | 自拍 欧美 | 午夜a级理论片在线播放琪琪 | 性无码一区二区三区在线观看 | 久久亚洲国产欧洲精品一 | 91亚洲精品第一综合不卡播放 |