【Python】模块和包

文章目录

  • 概要
  • 一、模块
    • [1.1 导入模块](#1.1 导入模块)
    • [1.2 删除模块、查看模块的变量及函数](#1.2 删除模块、查看模块的变量及函数)
    • [1.3 'name'变量](#1.3 ‘name’变量)
    • [1.4 sys模块](#1.4 sys模块)
  • 二、包
    • [2.1 包的初始化](#2.1 包的初始化)
    • [2.2 从包导入模块](#2.2 从包导入模块)
  • 其他章节的内容

概要

本文讲了模块和包的一些使用方法。


一、模块

模块就是py文件,里面存有该文件的变量和函数,学习模块的知识,可以在编写程序时调用其他py文件。同时模块还可以有效防止变量名和函数名重名。

1.1 导入模块

1.1.1 导入整个模块:

import 模块名

1.1.2 另一种导入模块的方式:

from 模块名 import *

以上两种导入方式的区别是前者在使用模块内函数时要加模块名即模块名.函数,后者在使用时可直接用函数名调用函数。

1.1.3 给模块取别名:

import 模块名 as 别名

1.1.4 导入模块内某一函数:

from 模块名 import 函数名

1.2 删除模块、查看模块的变量及函数

1.2.1 在运行时删除模块,以节约内存:

del 模块名

1.2.2 查看模块信息:

dir(模块名)

如果没有参数则显示全局命名空间的变量和函数。

1.3 'name'变量

变量' name '的值是模块名,当且仅当这个模块被用作主函数调用时为' main ',这给调试模块和调用模块提供了便利,例如我们判断该模块目前是作为主函数还是作为模块被调用时可以用如下语句:

if name == "mian"

1.4 sys模块

一个程序只能调用与他在同一目录下或在模块搜索路劲中的模块,这些路径可以通过sys模块来查询和修改。

print(sys.path)

sys.path.appnd(新的模块路径) # 这个路径应该是模块的目录,不应包含模块名

其他sys模块的函数

函数名 函数功能
sys.argv 从程序外部向程序传递参数
sys.exitarg 程序退出,arg=0为正常退出
sys.getdefaultencoding 获取系统当前编码
sys.setdefaultencoding 设置系统默认编码
sys.getfilesystemencoding 获取文件系统当前编码
sys.path 获取模块搜索路径的列表
sys.platform 获取当前系统平台
sys.stdin sys.stdout sys.stderr 这些变量包含与I/O流对应的流对象

二、包

包的作用除了防止模块名重名,还有管理内容的作用,一般我们将相同类型的模块也就是py文件放到同一个包下,来对模块进行管理。

2.1 包的初始化

每个包中都应该有一个__init__.py文件,该文件可以是空文件,也可以写一些有关包初始化的内容。

2.2 从包导入模块

2.2.1 直接导入某个包的模块:

import 包名.模块名

2.2.2 另一种导入方式:

from 包名 import 模块名

2.2.3 导入包内某一模块的变量或函数:

from 包名.模块名 import 函数名


其他章节的内容

序列
集合与字典
函数
模块和包
异常
文件

相关推荐
岁月宁静5 分钟前
RAG 文档摄入全链路,从原理到生产落地
vue.js·人工智能·python
JaydenAI21 分钟前
[对比学习LangChain和MAF-07]如何引入人机交互的审批流程
python·ai·langchain·c#·agent·hitl·maf
神奇元创1 小时前
商用级光路加速卡:大模型推理的极速落地方案
python·神经网络·fpga开发·dsp开发
运筹vivo@1 小时前
Python ContextVar 底层机制与内存模型拆解
前端·数据库·python
大白菜和MySQL1 小时前
java应用排查高线程
java·python
嵌入式协会20240722 小时前
(已解决)MinIO python 获取预签名出现forbidden、errornetwork等错误
java·开发语言·python
宸丶一2 小时前
Day 14:任务追踪 - 让 Agent 拥有项目管理能力
开发语言·python
skylar02 小时前
小白1分钟安装flash-attn
开发语言·python
JustNow_Man2 小时前
psmux快捷键
人工智能·python