欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

GitHub 熱門:別再用 print 輸出來調(diào)試代碼了

 更新時(shí)間:2019年04月29日 10:10:33   投稿:mrr  
本文給大家分享GitHub 熱門:別再用 print 輸出來調(diào)試代碼了的詳細(xì)解說,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

4 月 23 日,GitHub 每日趨勢(shì)榜第一位是一個(gè) Python ,相關(guān)項(xiàng)目:PySnooper。

該項(xiàng)目很快獲取 2200 Star。

PySnooper 是個(gè)什么東西?

如果你寫的 Python 代碼不能按如期那樣運(yùn)行,你會(huì)絞盡腦汁想為啥出錯(cuò)了。雖然你希望有支持?jǐn)帱c(diǎn)的成熟調(diào)試器,但或許你現(xiàn)在不想去設(shè)置這樣的調(diào)試器。

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

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

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

因?yàn)槟憧梢栽诓恍枰M(jìn)行任何設(shè)置的情況下將其用于糟糕的、龐大的企業(yè)代碼庫中。只需打開裝飾器(如下示例所示),并將輸出重定向到一個(gè)專用的日志文件,將日志文件路徑指定為第一個(gè)參數(shù)。

使用范例

范例是一個(gè)把數(shù)字轉(zhuǎn)成二進(jì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]
number_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

有興趣的童鞋,請(qǐng)收藏:

https://github.com/cool-RR/PySnooper

好了,本文就給大家介紹到這里,希望對(duì)大家有所幫助!

相關(guān)文章

  • 如何將服務(wù)器上的python代碼通過QQ發(fā)送回傳信息(附實(shí)現(xiàn)方法)

    如何將服務(wù)器上的python代碼通過QQ發(fā)送回傳信息(附實(shí)現(xiàn)方法)

    這篇文章主要介紹了我將服務(wù)器上的python代碼通過QQ發(fā)送回傳信息(附實(shí)現(xiàn)方法),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 使用微信助手搭建微信返利機(jī)器人流程

    使用微信助手搭建微信返利機(jī)器人流程

    這篇文章主要介紹了使用微信助手搭建微信返利機(jī)器人流程本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • 編碼史記

    編碼史記

    昨天聽了一個(gè)同事的編碼講座,很精彩。想起了要寫這個(gè)文章分享一下各種編碼是如何產(chǎn)生的
    2012-04-04
  • 關(guān)注程序員健康:程序最需要注意的幾件事

    關(guān)注程序員健康:程序最需要注意的幾件事

    這篇文章主要介紹了關(guān)注程序員健康:程序最需要注意的幾件事,本文列舉了熬夜、久坐、外賣和泡面、缺乏鍛煉、用眼過度等5個(gè)方面,需要的朋友可以參考下
    2014-09-09
  • git?push?origin?HEAD:refs/for/master?的意思分析

    git?push?origin?HEAD:refs/for/master?的意思分析

    這篇文章主要介紹了git?push?origin?HEAD:refs/for/master?的意思,補(bǔ)充介紹了git?提交代碼常用命令,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • 詳細(xì)JSON解析教程

    詳細(xì)JSON解析教程

    JSON即JS對(duì)象簡譜 , 是一種輕量級(jí)的數(shù)據(jù)交換格式,Java官方?jīng)]有提供JSON解析相應(yīng)的API,本文提供兩個(gè)最常用的JSON解析方法,分別是Google的Gson,阿里的FastJson,使用JSON解析之前要先獲取相應(yīng)的jar包,感興趣的朋友一起看看吧
    2023-08-08
  • 前端使用svg圖片改色實(shí)現(xiàn)示例

    前端使用svg圖片改色實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了前端使用svg實(shí)現(xiàn)圖片改色的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Mac下更換Homebrew鏡像源的實(shí)現(xiàn)方法

    Mac下更換Homebrew鏡像源的實(shí)現(xiàn)方法

    本文主要介紹了Mac下更換Homebrew鏡像源的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • 解決MobaXterm連接報(bào)錯(cuò)Network error:Connection timed out問題

    解決MobaXterm連接報(bào)錯(cuò)Network error:Connection timed 

    這篇文章主要介紹了解決MobaXterm連接報(bào)錯(cuò)Network error:Connection timed out問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Hadoop框架起步之圖解SSH、免密登錄原理和實(shí)現(xiàn)方法

    Hadoop框架起步之圖解SSH、免密登錄原理和實(shí)現(xiàn)方法

    這篇文章主要介紹了Hadoop框架起步之圖解SSH、免密登錄原理和實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07

最新評(píng)論