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爬取微博数据生成词云图片实例代码
Aug 31 Python
Python语言描述KNN算法与Kd树
Dec 13 Python
详解Tensorflow数据读取有三种方式(next_batch)
Feb 01 Python
python实现关键词提取的示例讲解
Apr 28 Python
python 除法保留两位小数点的方法
Jul 16 Python
Sanic框架异常处理与中间件操作实例分析
Jul 16 Python
python爱心表白 每天都是浪漫七夕!
Aug 18 Python
python3 读取Excel表格中的数据
Oct 16 Python
Python列表list排列组合操作示例
Dec 18 Python
对Python Pexpect 模块的使用说明详解
Feb 14 Python
详解Python的数据库操作(pymysql)
Apr 04 Python
PyCharm无法引用自身项目解决方式
Feb 12 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编程中字符串处理的5个技巧小结
2007/11/13 PHP
PHP禁止个别IP访问网站
2013/10/30 PHP
PHP动态生成javascript文件的2个例子
2014/04/11 PHP
php防止sql注入简单分析
2015/03/18 PHP
php实现基于PDO的预处理示例
2017/03/28 PHP
JavaScript Cookie 直接浏览网站分网址
2009/12/08 Javascript
基于jQuery的合并表格中相同文本的相邻单元格的代码
2011/04/06 Javascript
JavaScript高级程序设计 学习笔记 js高级技巧
2011/09/20 Javascript
java与javascript之间json格式数据互转介绍
2013/10/29 Javascript
浅谈JS使用[ ]来访问对象属性
2016/09/21 Javascript
jQuery删除当前节点元素
2016/12/07 Javascript
jQuery实现获取h1-h6标题元素值的方法
2017/03/06 Javascript
关于react中组件通信的几种方式详解
2017/12/10 Javascript
JS解析后台返回的JSON格式数据实例
2018/08/06 Javascript
微信小程序实现蒙版弹窗效果
2018/11/01 Javascript
JS开发自己的类库实例分析
2019/08/28 Javascript
layui--js控制switch的切换方法
2019/09/03 Javascript
基于Element的组件改造的树形选择器(树形下拉框)
2020/02/27 Javascript
解决vue组件没显示,没起作用,没报错,但该显示的组件没显示问题
2020/09/02 Javascript
[48:24]完美世界DOTA2联赛PWL S3 Forest vs INK ICE 第一场 12.09
2020/12/12 DOTA
Python实现时钟显示效果思路详解
2018/04/11 Python
tensorflow 加载部分变量的实例讲解
2018/07/27 Python
对Python中for复合语句的使用示例讲解
2018/11/01 Python
解决Pycharm后台indexing导致不能run的问题
2019/06/27 Python
Python递归调用实现数字累加的代码
2020/02/25 Python
CSS3 选择器 基本选择器介绍
2012/01/21 HTML / CSS
HTML5 LocalStorage 本地存储详细概括(多图)
2017/08/18 HTML / CSS
JavaScript+Canvas实现自定义画板的示例代码
2019/05/13 HTML / CSS
美国彩妆品牌:Coastal Scents
2017/04/01 全球购物
施华洛世奇水晶荷兰官方网站:SWAROVSKI荷兰
2017/05/12 全球购物
专科毕业生就业推荐信
2013/11/01 职场文书
学校招生宣传广告词
2014/03/19 职场文书
职务聘任书范文
2014/03/29 职场文书
导游词之贵州织金洞
2019/10/12 职场文书
Promise面试题详解之控制并发
2021/05/14 面试题
关于MySQL中explain工具的使用
2023/05/08 MySQL