【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镜像源配置及国内常用镜像源

相关推荐
ambition202421 小时前
操作系统同步:读者-写者问题与读写公平法详解(附每个 PV 操作含义)
linux·开发语言·数据结构·unix
chuan.bai4 小时前
Java RAG 实战(第 11 篇):RAG 知识工作台网页
java·开发语言·人工智能
离陌在学C#6 小时前
C# 事件(Event)详解:从概念到实战
开发语言·c#
Terra.K7 小时前
Java异常学习[特殊字符]
java·开发语言·学习
安_7 小时前
如何构建和使用向量索引?HNSW 和 IVF 有什么区别?
python·ai
葡萄城技术团队8 小时前
InfluxDB 2\.x 深度解析:核心架构、Flux 函数与制造业落地指南(三)
java·开发语言·架构
counting money8 小时前
Java IO流详解:从InputStream到文件操作实战
java·开发语言·python
wuyk5559 小时前
98.C语言易混难点:字符数组与字符串指针的底层差异
c语言·开发语言·c++·stm32·嵌入式硬件·算法
坚持学习前端日记9 小时前
Python SQLAlchemy ORM 从0到1精通实战手册(基础到复杂高阶)
数据库·python·oracle
峥无9 小时前
从0到1手撕红黑树:封装实现 my_map 与 my_set(SGI-STL 源码级深度解析)
开发语言·c++·笔记·算法·stl