首页 > 其他分享 >八、模块

八、模块

时间:2023-03-27 18:34:26浏览次数:32  
标签:__ 文件 name 包名 模块 import

pyhton中模块有3中层次类型

1.大模块:包(Package)

大型的程序通常博阿寒多个文件,按功能相近的原则将文件分组,每个组就是包。

包是一种python应用程序执行环境,通常有诺干个中模块和诺干子包组成,包一般包含一个__init__.py文件,该文件通常是空文件。

2.中模块:py文件

将项目中所有自定义函数分类分组,以文件形式组织同类函数,因此每个文件功能相对单一,代码也相对较少。在python中,一个.py文件就是一个中模块。

3.小模块:函数

 

内置函数是Python的标准函数,可直接调用,如print(),max(),len()等

内置模块是Python的标准库,必须通过import引用后才可调用(调用对应模块里的方法),默认安装在\Python\Pythonxxx\lib

第三方模块是第三方开发的,实现各种特定功能的模块,也叫第三方库。如selenium,paramiko等库

自定义模块是根据开发者项目需要编写的py文件。

 

模块测试:

if __name__ == '__main__':

当运行模块文件本身时,Python 解释器将特殊变量(内置全局变量) __name__ 的值置为字符串 __main__ ,因此__name__=='__main__'为真;后面语句会执行; 当该模块被其他程序所引用,那么__name__的值会被置为引用它的程序文件名(不包括.py),此时,__name__=='__main__'为假,后面语句块不会被执行。

 

模块如何被找到并引用的:

python通过内置模块的sys.path属性找到其他模块的。

sys.path 展示的是路径列表,是python引用时自动搜索的路径:

1)脚本文件所在的路径,即当前路径

2)PYTHONPATH系统变量设定的路径

3)默认安装路径

当自定义模块不在路径列表中时,是无法执行import引用的,需要先添加模块所在路径。

动态添加的路径,不影响环境信息,只在程序运行期间有效。

 

包的定义和应用

使用模块可避免函数名,变量名互相冲突。同名变量,函数可在不同模块中出现。同时为了避免模块名冲突,python引入按目录组织模块的方法,该目录就是包。

包与模块的关系:

 

 __init__.py文件一般是一个空文件,也可以对包进行些初始化工作,或涉资内置全局变量__all__语句。__all__就是使用语句from package_name import *准备的。

 

包的使用:

import 包名.子包名.模块     # 程序中使用时必须用全路径名

from 包名.子包名.import 模块   # 程序中使用时直接使用模块名,不需要假包前缀

from 包名.子包名.模块 import 函数     #可直接导入模块中的函数或变量。在使用时,必须指定包名和模块名。

 

标签:__,文件,name,包名,模块,import
From: https://www.cnblogs.com/twy5250/p/17262471.html

相关文章

  • #Python基础 利用Pyinstaller 模块对python代码进行打包exe
    一般我们都用 Python 的 Pyinstaller 模块进行打包,这里记录Pyinstaller 模块进行打包。一:安装 Pyinstaller 模块pipinstallPyInstaller二:打开cmd(win+R) ......
  • 服务器上导入文件夹中的模块错误
    importsysimportossys.path.append(os.path.dirname(sys.path[0]))可以在自己代码的顶端加入以上代码 来源:(13条消息)python服务器运行代码报错ModuleNot......
  • node常用模块之nvm使用
    更多node常用模块使用请访问:node常用模块汇总nvm这是一款node.js版本管理的工具。更多使用文档请点击访问nvm工具官网。nvminstall##安装指定版本,可模糊安装,如:安......
  • 模块化-更新已经存在的模块的内容
    1.以BasicModule为例,更新BasicModule的部分内容必须要将更新的内容放在BasicModule的Classes文件中版本号+12.提交到BasicModule的远端仓库提交代码并打tag(注意......
  • 常用模块
    1.random是python内置模块,作用是产生随机数random模块中常用的函数:  【注】还有一些函数也比较常用:randrange(),uniform()......
  • python模块导入和帮助
    目录模块导入和帮助下载和导入模块帮助常用帮助HELP文档模块导入和帮助下载和导入python‘sstandardlibraryisamazingpython模块:模块就是保存在一个单独文件当......
  • Maven高级——分模块开发与设计
    分模块开发的意义将原始模块按照功能拆分成若干个子模块,方便模块间的相互调用,接口共享 分模块开发创建Maven工程书写模块代码 注意:分模块开发需要先针对模块......
  • 去中心化组件共享方案 —— Webpack Module Federation(模块联邦)
    在大型应用中,我们可能会对其进行拆分,分成容器、主应用和多个子应用,使拆分后的应用独立开发与部署,更加容易维护。但无论是微应用、公共模块应用,都需要放到容器中才能使用。......
  • Python--模块--pymysql
    如何使用?建立连接--》建立游标--》执行命令...#pip3installpymysqlimportpymysqlconn=pymysql.connect(host="127.0.0.1",port=3306,database="day35",user......
  • 模块化:AMD规范
    模块化:AMD规范是席木木啊已于2022-10-0222:11:59修改421收藏分类专栏:Vue文章标签:AMD模块化javascript版权Vue专栏收录该内容41篇文章2订阅订阅专栏......