Python模块的宏伟蓝图

鳄鱼君

发表文章数:523

热门标签

, ,

Vieu四代商业主题

高扩展、安全、稳定、响应式布局多功能模板。

¥69 现在购买
首页 » Python教程 » Python模块的宏伟蓝图

Python模块是最高级别的程序组织单元,它将程序代码和数据封装起来,以便重用。每个文件都是一个模块,而且模块导入其他模块之后就可以使用导入模块定义的变量名。模块可以有两个语句和一个重要的内置函数进行处理:
1.import:使导入者以一个整体获取一个模块
2.from:允许导入者从一个模块文件中获取特定的变量名
3.imp.reload:在不终止Python程序的情况下,提供了一种重载模块文件代码的方法

从抽象的视角来看,模块至少有三个角色:代码重用、系统命名空间的划分、实现共享服务!

标准库模块

Python自带了很多实用的模块,称为标准链接库。这个集合大约有200个模块,包含与平台不相关的常见程序设计任务:操作系统接口、对象永久保存、文字匹配模式、网络和Internet脚本、GUI等。这些工具都不是Python语言的组成部分,但是,你可以在任何安装了标准Python的情况下,导入适当的模块来使用。

import如何工作

在Python中,导入并非只是把一个文件文本插入另一个文件这么简单。导入其实是运行时的运算,程序第一次导入指定文件时,会执行三个步骤:
1.找到模块文件
2.编译成位码(需要时)
3.执行模块的代码来创建其所定义的对象

这三个步骤只在程序执行时,模块第一次导入时才会进行,在这之后,导入相同的模块时,会跳过这三个步骤,而是只提取内存中已加载的模块对象。往深处理解,Python把载入的模块存储到一个名为sys.modules的表中,并在一次导入操作的开始检查该表,如果模块不存在,将会启动一个三步骤的操作过程。

1.搜索

首先Python必须查找到import语句所引用的模块文件。在使用import语句的时候,我们并不需要添加文件目录路径。因为Python使用了标准模块搜索路径来找出import语句所对应的模块文件。

2.编译(可选)

遍历模块搜索路径,找到符合import语句的源代码文件之后,如果必要的话,Python接下来会将其编译成字节码。

Python会检查文件的时间戳,如果发现字节码文件比源代码文件旧(例如,你修改过源文件),就会在程序运行时自动重新生成字节代码。

未经允许不得转载:作者:鳄鱼君, 转载或复制请以 超链接形式 并注明出处 鳄鱼君
原文地址:《Python模块的宏伟蓝图》 发布于2020-06-18

分享到:
赞(0) 赏杯咖啡

评论 抢沙发

9 + 7 =


文章对你有帮助可赏作者一杯咖啡

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.6主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册