当前位置: 首页 > news >正文

python---模块

文章目录

  • 模块的主要作用
  • 模块分类
  • 使用模块
    • 导入模块
    • 从模块导入特定内容
    • 给模块或导入内容起别名
    • 导入模块中的所有内容(不推荐)
  • 创建自定义模块
  • 模块搜索路径
  • 特殊变量 __name__
  • 标准库模块示例

模块(Module)是 Python 中组织代码的基本单位,它是一个包含 Python 定义和语句的文件,文件名就是模块名加上 .py 后缀。

模块的主要作用

1、代码重用:可以将常用的功能封装在模块中,供多个程序使用

2、命名空间管理:避免命名冲突

3、代码组织:将相关代码组织在一起,提高可维护性

模块分类

1、内置模块
2、第三方模块
需要手动下载,打开cmd命令行,使用命令"pip install 模块名"下载模块,
使用命令"pip uninstall 模块名" 卸载模块
3、自定义模块

使用模块

导入模块

# 导入整个模块
import math# 使用模块中的内容
print(math.pi)  # 3.141592653589793

从模块导入特定内容

这样子变量可以直接使用不需要 “模块名.变量”,但是也会和本文件的文件名产生冲突。
示例代码1:

# 从模块导入特定函数/变量
from math import pi, sqrtprint(pi)      # 3.141592653589793
print(sqrt(16))  # 4.0

示例代码2:

# 从模块导入特定函数/变量
from math import pi, sqrtpi = 5print(pi)      # 5
print(sqrt(16))  # 4.0

给模块或导入内容起别名

# 给模块起别名
import numpy as np# 给导入的内容起别名
from math import sqrt as square_root# 支持多个数据同时起别名
from math import pi as a, sqrt as b

导入模块中的所有内容(不推荐)

变量和方法会起冲突,后导入的覆盖先导入的

from math import *  # 导入math模块中的所有内容print(pi)  # 可以直接使用,不需要math.前缀

创建自定义模块

1、创建一个 .py 文件,例如 mymodule.py
2、在文件中定义函数、变量等

# mymodule.py
def greet(name):return f"Hello, {name}!"version = "1.0"

3、在其他文件中导入使用

import mymoduleprint(mymodule.greet("Alice"))  # Hello, Alice!
print(mymodule.version)         # 1.0

模块搜索路径

当导入一个模块时,Python 会按以下顺序搜索:

1、当前目录

2、PYTHONPATH 环境变量指定的目录

3、Python 安装的默认路径

可以通过 sys.path 查看搜索路径:

import sys
print(sys.path)

特殊变量 name

每个模块都有一个 name 属性:
1、当模块被直接运行时,name 等于 ‘main
2、当模块被导入时,name 等于模块名
常用于编写测试代码:
示例代码1:
为了测试目前是否运行该文件

# mymodule.py
def func():print("This is a function")if __name__ == '__main__':# 以下代码只在直接运行该模块时执行print("Running the module directly")func()

输出结果1:

Running the module directly
This is a function

示例代码2:

print(__name__)

输出结果2:

__main__

示例代码3:
在新建的mymodule模块中假如以下代码:

def getfilename():print(__name__)

在运行的文件中假如以下代码:

import mymodule
mymodule.getfilename()

输出结果3:
输出结果为导入模块的名称

mymodule

标准库模块示例

Python 自带许多有用的标准库模块:

import os          # 操作系统接口
import sys         # 系统相关功能
import math        # 数学运算
import random      # 生成随机数
import datetime    # 日期时间处理
import json        # JSON 处理
import re          # 正则表达式
http://www.dtcms.com/a/334658.html

相关文章:

  • 防御保护15
  • YOLOv8环境配置命令
  • GCN图卷积神经网络的Pytorch实现
  • Azure AI Search 探索总结
  • 数据库索引视角:对比二叉树到红黑树再到B树
  • 【计算机视觉与深度学习实战】03基于Canny、Sobel和Laplacian算子的边缘检测系统设计与实现
  • DeepSeek-R1-深度解析-通过强化学习激励大语言模型的推理能力
  • Spring AI 玩转工具调用:模型帮你精确设闹钟
  • 九尾狐未来机械锂晶核
  • 盲盒抽谷机小程序系统开发:从0到1的完整方法论
  • 《从入门到精通:Kafka核心原理全解析》
  • 医院管理中的PythonAI编程:资源调配、质量监控、成本控制、医保监管与科研转化
  • 程序设计|C语言教学——C语言基础2:计算与控制语句
  • 登录与登录校验:Web安全核心解析
  • 【AndroidStudio修改中文设置】
  • 宋红康 JVM 笔记 Day03|内存结构概述、类加载器与类的加载过程、类加载器分类
  • java基础(九)sql
  • 复合机器人食品分拣生产线:一体化控制系统引领高效柔性新食代
  • Android Jetpack | Lifecycle
  • vscode的使用
  • FPGA实现I2C通信方案
  • 爬机 验证服务器是否拒绝请求
  • 第五章 大数定律与极限定理
  • 概率论基础教程第3章条件概率与独立性(一)
  • 搜索 AI 搜索 概率论基础教程第3章条件概率与独立性(二)
  • Tomcat Server 组件原理
  • Java 学习笔记(基础篇3)
  • 从零打造大语言模型2--编码注意力机制
  • 【基础-判断】可以通过ohpm uninstall 指令下载指定的三方库
  • 中国教育信息化演进历程与发展趋势研究报告