当前位置: 首页 > 面试题库 >

如何重新加载使用`from module import *`导入的python模块

空鸿云
2023-03-14
问题内容

在这个有用的问答中,我看到了一个可以使用的问题,reload(whatever_module)或者在Python
3中,imp.reload(whatever_module)

我的问题是,如果我说from whatever_module import *要进口怎么办?那whatever_module我使用的时候就不用指了reload()。你们会因为把整个模块扔到全局名称空间中而对我大喊大叫吗?:)


问题答案:

我同意 “一般不要这样做”的 共识,但是…

正确答案是:

import X
reload(X)
from X import Y  # or * for that matter


 类似资料:
  • 问题内容: 我有一台运行时间较长的Python服务器,并且希望能够在不重新启动服务器的情况下升级服务。最好的方法是什么? 问题答案: 你可以使用reload内置函数重新加载已导入的模块: 在Python 3中,已移至imp模块。在3.4中,不推荐使用importlib,而在中添加了。当定位到3或更高版本时,在调用reload或导入时参考相应的模块。 我认为这就是你想要的。诸如Django开发服务器

  • 问题内容: 我有一个运行时间较长的Python服务器,并且希望能够在不重新启动服务器的情况下升级服务。最好的方法是什么? 问题答案: 您可以使用reload内置函数(仅适用于Python 3.4+)重新导入已导入的模块: 在Python 3中,已移至模块。在3.4中,imp不推荐使用,而reload在中添加了。当定位到3或更高版本时,在调用reload或导入时参考相应的模块。 我认为这就是您想要的

  • 问题内容: 跟进有关重新加载模块的问题,如何从已更改的模块重新加载特定功能? 伪代码: 问题答案: 您想要的是可能的,但是需要重新加载两件事……首先,但是您还必须这样做(假设是包含该语句的模块的名称)。 至于为什么…第一次加载时,将创建一个对象,其中包含一个对象。当您导入到模块,它存储到一个参考。当被调用时,对象被消隐,并且该模块重新执行。这意味着所有引用仍然有效,但是已经创建了一个新对象…因此,

  • 问题内容: 在Python中,一旦我在解释器会话中使用导入了模块X ,并且模块在外部进行了更改,就可以使用来重新加载该模块。然后,这些更改将在我的解释器会话中可用。 我想知道当我使用模块从模块X导入组件Y时是否也可行? 该语句不起作用,因为Y本身不是模块,而是模块内部的仅组件(在这种情况下为类)。 是否有可能在不离开解释器会话(或导入整个模块)的情况下重新加载模块的各个组件? 编辑: 为了澄清起见

  • 我有一个python程序,它在运行之前加载了大量数据。因此,我希望能够在不重新加载数据的情况下重新加载代码。对于常规python, reload\u bar我看不到我的更改。我还尝试了pyximport。build\u module()运气不好--模块已重建,但没有重新加载。我在一个“普通”的python shell中运行,如果有什么不同的话,就不是IPython。

  • 本文向大家介绍Python重新加载模块的实现方法,包括了Python重新加载模块的实现方法的使用技巧和注意事项,需要的朋友参考一下 importlib 模块的作用 模块,是一个一个单独的py文件 包,里面包含多个模块(py文件) 动态导入模块,这样就不用写那么多的import代码, 典型的例子: 自动同步服务,每个网站都有一个py文件。主进程里收到同步任务,根据名称来动态导入对应的py文件,这样就