快速理解Python的模块、包、库以及框架的联系和区别

在学习 Python 时,您会经常看到术语**“模块Module”、“包Package”、“库Library”以及“框架Framework”**,只有搞懂了它们分别是什么,之间都有什么关系,才能够真正理解程序之美。
在这里插入图片描述

一、模块Module

在这里插入图片描述
模块是一个变量、数组、函数和类的集合。另外,模块是一种以.py为后缀的文件,用于表示程序的一部分,模块的名称是该.py文件的名称。模块的名称**作为一个全局变量__name__**的取值可以被其他模块获取或导入。

模块的导入通过ipmort来实现,导入模块的方式如下:

import <moduleName>
from <moduleName> import <functionName>

二、包Package

在这里插入图片描述
一个包是几个模块的集合。包体现了模块的结构化管理思想,包由模块文件构成,将众多具有相关功能的模块文件结构化组合形成包。

当创建一个包时,首先把你想打包的模块放在一个目录中。 在该目录中,创建一个新的特殊文件,名为__init__.py。 这只是一个单一的Python文件,因为它的扩展名是.py。 然而,通过这样一个名为 init.py 的文件,该目录下的文件被视为一个单一的包。

# 目录结构
.
├── creatures
│   ├── __init__.py
│   ├── character.py
│   └── moster.py
└── magic
    ├── __init__.py
    └── magic.py

从编程开发的角度看,两个开发者A和B由可能把各自开发且功能不同的模块文件取了相同的名字。如果第三个开发者通过名称导入模块,则无法确认是哪个模块被导入了。为此,开发者A和B可以构建一个包,将模块放到包文件夹下,通过“包.模块名”来指定模块。

导入示例:

import <packageName.moduleName>

三、库Library


一个库是几个包的集合。Python中的库没有具体的定义,着重强调其功能性,具有某些功能的模块和包都可以被称作库。库中也可以包含包、模块和函数。
python最强大的功能就是可以使用大量强大的库,包括以下:

  • 标准库:Python里那些自带的模块
  • 第三方库:就是由其他的第三方机构,发布的具有特定功能的模块。
  • 自定义模块:用户自己可以自行编写模块,然后使用。
    在这里插入图片描述
    在这里插入图片描述
# 举个例子
import numpy as np

data = [[1, 2, 3, 4], [5, 6, 7, 8]]
arr = np.array(data) 

print(arr)
print(arr.ndim) 
print(arr.shape) 

四、框架Framework

框架是Python库的集合
框架跟库类似,从功能上来说的,框架往往集成了多种库的功能,框架是用来辅助开发某个领域功能的一个包,一般包内还会含有多个子包。
如爬虫框架scrapy、web开发框架Django和flask、大数据框架pyspark等。
原文地址:

https://blog.csdn.net/qingfengxd1/article/details/118880204
https://blog.csdn.net/weixin_44801979/article/details/126225780?ops_request_misc=&request_id=&biz_id=102&utm_term=python%20%E6%A8%A1%E5%9D%97%20%E5%8C%85%20%E5%BA%93%20%E7%B1%BB&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-2-126225780.nonecase&spm=1018.2226.3001.4187

猜你喜欢

转载自blog.csdn.net/weixin_43555555/article/details/129663708