关于python的库,模块和包,如何正确理解

在接触python技术时,你经常见到三个名词:库,模块,包,他们各自指代什么,如何区分它们?

这三个名词里,模块是最容易理解的,我们通常将一组在功能上联系紧密的代码写在一个python文件中,为的是方便管理,它就是一个模块,包含了一组功能,可以在其他模块中import 使用,你可以简单的任务一个python文件就是一个模块。

包,是模块的集合,是一组在功能上联系紧密的模块,这些模块协同工作来完成一个特定的功能,识别包的关键是__init__.py 文件 ,该文件表明它是一个python包,而不是一个普通的文件夹,包是有层次的,这样做是为了更好的组织代码。

库,是包的集合,实践中,我们经常将库与包的概念混用,这样做没有什么危害,因此它仅仅是一个概念,而不是一个技术上的硬性约束,pandas被认为是一个包,而request则被认为是一个库,从实践的角度看,他们有什么明显的区别么?完全没有。

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案