我正在尝试通过查看流行库中的代码来了解有关 Python 的更多信息。我修改的第一个库是python-requests
Kenneth Reitz 的。
我所做的很简单git clone <request_repo_url_from_github>
,现在我正在检查代码。
我正在__init__.py
浏览requests/packages
.
我有几个问题要问:
为什么
__init__.py
里面requests/packages
,直接下面应该没有__init__.py
文件requests
?或者它很简单,因为这是一个从 github 直接克隆和卸载的包,就像这样?第二个问题是指下面的上面的代码。我想知道的是究竟
NullHandler
做了什么?我在这里查看了文档,拥有一个“无操作”处理程序意味着什么。图书馆开发人员将在哪里使用此处理程序?我的意思是,它有什么特别之处?
import logging
try: # Python 2.7+
from logging import NullHandler
except ImportError:
class NullHandler(logging.Handler):
def emit(self, record):
pass