【Python】模块和包

模块(Module)是一个python文件,能定义函数,类和变量,能包含可执行的代码。

一个模块就是一个工具包,里面有工具供我们使用,以实现功能。

类似于C语言的库函数

模块的导入

组合形式:

复制代码
import 模块名
from 模块名 import 类、变量、方法等
from 模块名 import *
import 模块名 as 别名
from 模块名 import 功能名 as 别名

自定义模块实际上就是自己写一个python文件

当导入了多个模块,调用功能同名时,调用的是后面导入的模块(覆盖前面)

两个下划线__

__main__变量

python 复制代码
if __name__ == '__main__':

模块内部执行语句,导入模块时也会执行;而把执行的语句放在上面这条语句下,右键运行时会正常执行,而导入时就不会执行了。

__all__变量

python 复制代码
__all__ = [ ]

如果一个模块中有此变量,当使用" from 模块名 import * "导入时,只能导入这个列表中的元素


当我们的模块文件越来越多时,包可以帮助我们管理这些模块

从物理上看,包就是一个文件夹,在该文件夹下包含了一个" init.py "文件,该文件夹可用于包含多个模块文件(" init.py "文件存在即为包,不存在就是普通的文件夹)

从逻辑上看,包的本质依然是模块

使用PyCharm新建包很方便

调用就是模块上多了个层级,即 包.模块名;方式和调用模块一样

在" init.py "中我们可以使用__all__变量,列表里面是模块名,功能类比上面

第三方包

需要安装,例如:

  • 科学计算:numpy
  • 数据分析:pandas
  • 大数据计算:pyspark , apache-flink
  • 图形可视化:matplotlib , pyecharts
  • 人工智能:tensorflow

使用pip进行安装(在命令提示符中)

复制代码
pip install 包名称

因为是从国外下载,下载速度可能很慢,我们可以使用国内镜像源

Python-pip镜像源配置及国内常用镜像源

相关推荐
睡美人的小仙女1274 小时前
Threejs加载环境贴图报错Bad File Format: bad initial token
开发语言·javascript·redis
rayufo4 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk4 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
缺点内向5 小时前
C#编程实战:如何为Word文档添加背景色或背景图片
开发语言·c#·自动化·word·.net
一起养小猫5 小时前
Flutter for OpenHarmony 实战:记账应用数据统计与可视化
开发语言·jvm·数据库·flutter·信息可视化·harmonyos
zhougl9965 小时前
Java 所有关键字及规范分类
java·开发语言
Python 老手5 小时前
Python while 循环 极简核心讲解
java·python·算法
java1234_小锋5 小时前
Java高频面试题:MyISAM索引与InnoDB索引的区别?
java·开发语言
2501_944525546 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
qq_417129256 小时前
C++中的桥接模式变体
开发语言·c++·算法