import的本质解析
作者:FrankB 发布时间:2023-07-12 07:09:24
天我们看看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")
来源:http://www.cnblogs.com/frankb/p/7748576.html


猜你喜欢
- axios封装请求axios封装常见操作axios请求时的常见或者说是常用的操作,需要对常规的axios封装做出改变根据不同条件写出不同的效
- 前言本文主要给大家介绍了关于python3中全角和半角字符转换的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。一
- 本文研究的主要是django在接受post请求时显示403forbidden时的处理方法,具体代码如下。最近在做一个项目需要用到Django
- 本文实例讲述了JS获取网页图片name属性的方法。分享给大家供大家参考。具体如下:下面的JS代码可以用来获取网页图片的name属性<!
- 下面附上参考文章,这篇文章是通过识别出来的文字来打开浏览器中的默认网站。python通过调用百度api实现语音识别题目很简单,利用语音识别识
- 一、Flask蓝图目录我们之前写的Flask项目都是自己组织的目录结构,其实Flask官方有其推荐的目录结构,以下就是一个符合官方推荐的Fl
- 在默认情况下,我们使用PyQt5创建出来的窗口和部件都是默认的样式,虽然谈不上很丑,但是也毫无美感可言。其实,在PyQt5中,我们可以有较高
- 前言在学习Flask框架的蓝图时,遇到导包时用到了`from . 模块 import 对象`,然后试了试直接 import会报错,直接告诉我
- 例如数据 列Namename abcd最后的结果a*b*c*d*declare @test table( namevarchar(10))&
- python提取特定时间段内的数据尝试一下:data['Date'] = pd.to_datetime(data['
- 简介我知道有很多文章和指南介绍在互联网上实现主-从复制。在主-从复制中,主机影响从机。但从数据库中的任何更改不会影响主数据库,这篇文章将帮助
- 用Dreamweaver制作网页时,如果插入的图片、GIF动画、声音、视频或链接的网页是用中文命名的,在用IE浏览器浏览时可能显示不出来。以
- F()函数F()函数的导入from django.db.models import F为什么要使用F()函数?一个 F()对象代表了一个mo
- AngularJS 简介AngularJS 是一个 JavaScript 框架。它可通过 <script> 标签添加到 HTML
- pandas中的agg函数python中的agg函数通常用于调用groupby()函数之后,对数据做一些聚合操作,包括sum,min,max
- imadjust简介imadjust是一个计算机函数,该函数用于调节灰度图像的亮度或彩色图像的颜色矩阵。在matlab的命令窗口中键入: d
- 在pycharm中创建django项目的方法步骤,分享给大家,具体如下:创建完成后,我们可以看看django项目是否可以启动在Termina
- 由于Pytorch不像TensorFlow有谷歌巨头做维护,很多功能并没有很高级的封装,比如说没有tf.one_hot函数。本篇介绍将一个m
- 一、变量的定义程序中,数据都是临时存储在内存中,为了更快速的查找或使用这个数据,通常我们把这个数据在内存中存储之后,给整个数据定义一个名称,
- 本文为大家分享了centos7利用yum安装mysql 8.0.12的详细步骤,供大家参考,具体内容如下清理原有的mysqlrpm -qa