在python中,每一个以 .py结尾的Python文件都是一个模块。其他的文件可以通过导入一个模块来读取该模块的内容。导入从本质上来讲,就是载入另一个文件,并能够读取那个文件的内容。一个模块的内容通过这样的属性能够被外部世界使用。
这种基于模块的方式使模块变成了Python程序架构的一个核心概念。更大的程序往往以多个模块文件的形式出现,并且导入了其他模块文件的工具。其中的一个模块文件被设计成主文件,或叫做顶层文件(就是那个启动后能够运行整个程序的文件)。
默认情况下,模块在第一次被导入之后,其他的导入都不再有效。如果此时在另一个窗口中改变并保存了模块的源代码文件,也无法更新该模块。这样设计的原因在于,导入是一个开销很大的操作(导入必须找到文件,将其编译成字节码,并且运行代码),以至于每个文件、每个程序运行不能够重复多于一次。
那么想要使得Python在同一次会话中再次运行文件,该怎么办呢?这就需要调用imp标准库模块中的reload函数。如下所示
from imp import reload
reload(MyModule)
这样就可以重新装载MyModule模块,使得修改有效。
注意:reload函数希望获得的参数是一个已经加载了的模块对象的名称,所以如果在重载之前,请确保已经成功地导入了这个模块。
说明:Python 3.0把reload内置函数移到了imp标准库模块中。它仍然像以前一样重载文件,但是,必须导入它才能使用。在Python 3.0中,运行import imp并使用imp.reload(M),或者像上面所示的,运行from imp import并使用reload(M)。
分享到:
相关推荐
python3.0纯pdf版,适合0基础入门学习python,建议初学者从python3.0上手,会持续更新成一个完整的教程
python3.0廖雪峰python3.0廖雪峰python3.0廖雪峰python3.0廖雪峰python3.0廖雪峰
python 3.0 eclipse plugin
《机器学习实战》源代码中使用的python2.7 在python3.0中部分是无法使用的,所以这经过了我的调试修改后在python3.0中是可以完美运行的决策树代码 内含数据样本,便于学习
python3.0 猜数字小游戏,用python3.0 实现一个猜数字小游戏
这是python 3.0的官方指导手册。
python3.0 Windows 平台。希望对大家有用
python3.0纯pdf版,适合0基础入门学习python,建议初学者从python3.0上手,会持续更新成一个完整的教程
python3.0更新的参考文档,锻炼你的英语水平。绝对的实用,只要你略有English。。。
Python3.0学习笔记, 安装完Python之后(我本机的版本是2.5.4),打开IDLE(Python GUI) , 该程序是Python语言解释器,你写的语句能够立即运行.我们写下一句著名的程序语句。
文档内容是 www.runoob.com 官网的离线html文件,便于离线学习菜鸟教程,一共有42和html对应42个学习模块
Python3.0 Tutorial 简体中文版 发布! 译者:刘鑫 尹伟铭 Kernel1983 HTML制作:刘鑫
python基础教程纯pdf版,适合0基础人员学习,对于需要入门python的建议直接上手python3.0,会持续更新成一个整体性的文档
python3.0爬虫抓取北京天气json
Dive into Python 3.0Dive into Python 3.0Dive into Python 3.0Dive into Python 3.0
This book is updated for the new Python 3.0 language. If you are looking for a tutorial on the current Python 2.x version, please download the previous revision of the book [5]. On the same note, if ...
全名:python-3.0.msi
VS2010的Python插件及Python3.0
基于python3.0的人脸检测 基于python3.0的人脸检测 基于python3.0的人脸检测