首页 > 编程语言 >python3中reload()

python3中reload()

时间:2023-01-25 15:45:07浏览次数:42  
标签:文件 imp Python reload 导入 模块 python3

reload(),是python3.0中重载模块

  在python中,每一个以 .py结尾的Python文件都是一个模块。其他的文件可以通过导入一个模块来读取该模块的内容。导入从本质上来讲,就是载入另一个文件,并能够读取那个文件的内容。一个模块的内容通过这样的属性能够被外部世界使用。

  这种基于模块的方式使模块变成了Python程序架构的一个核心概念。更大的程序往往以多个模块文件的形式出现,并且导入了其他模块文件的工具。其中的一个模块文件被设计成主文件,或叫做顶层文件(就是那个启动后能够运行整个程序的文件)。

  默认情况下,模块在第一次被导入之后,其他的导入都不再有效。如果此时在另一个窗口中改变并保存了模块的源代码文件,也无法更新该模块。这样设计的原因在于,导入是一个开销很大的操作(导入必须找到文件,将其编译成字节码,并且运行代码),以至于每个文件、每个程序运行不能够重复多于一次。

  那么想要使得Python在同一次会话中再次运行文件,该怎么办呢?这就需要调用imp标准库模块中的reload函数。

  注意:reload函数希望获得的参数,是一个已经加载了的模块对象的名称,所以如果在重载之前,请确保已经成功地导入了这个模块。

  说明:Python 3.0把reload内置函数移到了imp标准库模块中。它仍然像以前一样重载文件,但是,必须导入它才能使用。在Python 3.0中,运行import imp并使用imp.reload(M),或者像上面所示的,运行from imp import并使用reload(M)。

标签:文件,imp,Python,reload,导入,模块,python3
From: https://www.cnblogs.com/zknublx/p/17066996.html

相关文章