小菜鸡学习包之requests-__init__.py篇
程序员文章站
2022-03-30 08:18:53
from .exceptions import RequestsDependencyWarning首先是这个from . import,我这个小菜鸡去查了一下(https://realpython.com/absolute-vs-relative-python-imports/),就是绝对(absolute)和相对(relative)引入的区别:import会去sys.modules(一个字典,记录了所有预加载的模块)里面查找是否有相对应的包*如果未找到,那么python就会去python 标准库...
from .exceptions import RequestsDependencyWarning
首先是这个from . import,我这个小菜鸡去查了一下(https://realpython.com/absolute-vs-relative-python-imports/),就是绝对(absolute)和相对(relative)引入的区别:
- import会去sys.modules(一个字典,记录了所有预加载的模块)里面查找是否有相对应的包*
- 如果未找到,那么python就会去python 标准库(standard
library)里面查找,如果还没有找到,那么就会去sys.path(通常包括目前文件夹)里面继续查找 - 如果找到,那么这个名字就和被和这个包绑定起来,就不会出现nameerror
一个dot就代表这个模块或者包在同级目录,两个dot表示这个在上一级目录中
在同级exception.py中,RequestsDependencyWarning继承了RequestsWarning,RequestsWarning继承了Warning
def check_compatibility(urllib3_version, chardet_version):
def _check_cryptography(cryptography_version):
这两个函数就是检查依赖包的版本(#注意,代码里面的urllib是1.x.x版本,chardet是3.x.x版本,后续可能也要继续修改。如果有大神指出,
- 这里有什么办法可以很好的自动获取最低版本号码?
总结:这一部分自定了很多Error(基于python 标准库中的 Warning),引入了一些写好的组件模块。
本文地址:https://blog.csdn.net/gtmdCSN/article/details/107132050
上一篇: 巨头离场、收缩、躺平,社区团购回归起点1.0:赋能团长
下一篇: java实现航空用户管理系统