我想通過查看流行庫中的代碼來了解關於Python的更多信息。我碰到的第一個圖書館是Kenneth Reitz的python-requests
。logging.NullHandler和__init__.py在Python請求中的文件位置
我所做的只是git clone <request_repo_url_from_github>
,現在我正在檢查代碼。
我正在查看requests/packages
中的__init__.py
文件。
我有幾個問題想請教:
爲什麼
__init__.py
內requests/packages
,應該有不requests
直接下__init__.py
文件?或者它是簡單的,因爲這是一個從github直接克隆和卸載的軟件包,它就像這樣?第二個問題涉及上面的代碼如下。我想知道的是
NullHandler
究竟做了什麼?我看了一下文檔here,這是什麼意思,有一個'無操作'處理程序。這個Handler將被圖書館開發人員用在哪裏?我的意思是,它有什麼特別之處?
import logging
try: # Python 2.7+
from logging import NullHandler
except ImportError:
class NullHandler(logging.Handler):
def emit(self, record):
pass
你可能會對['logging_tree'](http://rhodesmill.org/brandon/2012/logging_tree/)感興趣,它以樹形圖的形式顯示所有記錄器。 –