import的本质解析


Posted in Python onOctober 30, 2017

上一篇文章中我们介绍了python中hashlib模块用法示例,详情参见:https://3water.com/article/127103.htm。今天我们看看import的有关内容。

编程时总是用到import导入,动不动就导入,很简单,但import到底是个什么功能,它的本质是什么?

一. 模块:用来从逻辑上来组织python代码(变量,函数,类,逻辑,实现一个功能),本质就是,py结尾的python文件

1.1 导入方法:

import module

import module1, module2

from module import logger

from module import logger as frank

1.2 导入的本质: 把python文件解释一遍

1.3  import module_name

      实际上相当于 module_name 的所有代码复制与此, 当要使用时,取用其中的变量和函数 module_name.name,  module_name.logger

1.4  from module_name import name

       实际上相当于将module_name 中 name 那部分代码复制与此,便可以直接引用 name='alex', 直接可以调用 变量 name

二. 包:从逻辑上组织模块的,本质就是一个目录,(一个带有_init_.py 文件的目录)

1.1 导入的本质: 就是执行该包目录下的_init_.py 文件

1.2 导入优化:

实例 , 下面的代码需要来不停地调用 module_test 这个模块, 若有200个这样的调用,就得来来回回地找,影响效率, 此时可以将 "import module_test" 转化为 “from module_test import test”

def logger(): 
 module_test.test()
 print(' in the logger')
def search():
 module_test.test()
 print("in the search")

总结

以上就是本文关于import的本质解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:浅谈Python由__dict__和dir()引发的一些思考、13个最常用的Python深度学习库介绍等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!

Python 相关文章推荐
Python实现优先级队列结构的方法详解
Jun 02 Python
Python实现视频下载功能
Mar 14 Python
python批量实现Word文件转换为PDF文件
Mar 15 Python
python实现百度语音识别api
Apr 10 Python
Python中函数参数调用方式分析
Aug 09 Python
python 申请内存空间,用于创建多维数组的实例
Dec 02 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
Jan 10 Python
pycharm不能运行.py文件的解决方法
Feb 12 Python
Python生成器传参数及返回值原理解析
Jul 22 Python
详解pytorch tensor和ndarray转换相关总结
Sep 03 Python
Python中qutip用法示例详解
Oct 02 Python
python爬虫请求库httpx和parsel解析库的使用测评
May 10 Python
python中hashlib模块用法示例
Oct 30 #Python
浅谈Python由__dict__和dir()引发的一些思考
Oct 30 #Python
Android分包MultiDex策略详解
Oct 30 #Python
Python 判断是否为质数或素数的实例
Oct 30 #Python
基于Python __dict__与dir()的区别详解
Oct 30 #Python
浅谈使用Python变量时要避免的3个错误
Oct 30 #Python
Python中进程和线程的区别详解
Oct 29 #Python
You might like
九个你必须知道而且又很好用的php函数和特点
2013/08/08 PHP
php实现的任意进制互转类分享
2015/07/07 PHP
CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法
2015/12/17 PHP
thinkPHP框架实现图像裁剪、缩放、加水印的方法
2017/03/14 PHP
iis 7下安装laravel 5.4环境的方法教程
2017/06/14 PHP
thinkphp 抓取网站的内容并且保存到本地的实例详解
2017/08/25 PHP
Javascript类定义语法,私有成员、受保护成员、静态成员等介绍
2011/12/08 Javascript
jquery索引在使用中的一些困惑
2013/10/24 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
JavaScript实现节点的删除与序号重建实例
2015/08/05 Javascript
JavaScript String 对象常用方法详解
2016/05/13 Javascript
JavaScript中style.left与offsetLeft的使用及区别详解
2016/06/08 Javascript
jQuery实现的跨容器无缝拖动效果代码
2016/06/21 Javascript
jQuery序列化表单成对象的简单实现
2016/11/29 Javascript
BootStrap中的Fontawesome 图标
2017/05/25 Javascript
解决vue点击控制单个样式的问题
2018/09/05 Javascript
vue组件三大核心概念图文详解
2019/05/30 Javascript
深入学习JavaScript 高阶函数
2019/06/11 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
三步搞定:Vue.js调用Android原生操作
2020/09/07 Javascript
详解JavaScript 高阶函数
2020/09/14 Javascript
浅析Python中MySQLdb的事务处理功能
2016/09/21 Python
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
2018/01/11 Python
适合Python初学者的一些编程技巧
2020/02/12 Python
python序列类型种类详解
2020/02/26 Python
使用python matploblib库绘制准确率,损失率折线图
2020/06/16 Python
如何把python项目部署到linux服务器
2020/08/26 Python
亚洲颇具影响力的男性在线购物零售商:His
2019/11/24 全球购物
Jacques Lemans德国:奥地利钟表品牌
2019/12/26 全球购物
三下乡活动方案
2014/01/31 职场文书
个人充满哲理的自我评价
2014/02/20 职场文书
大学生社团活动总结
2014/04/26 职场文书
食品安全汇报材料
2014/08/18 职场文书
2015年三八妇女节活动总结
2015/02/06 职场文书
初三数学教学反思
2016/02/17 职场文书
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python