相关疑难解决方法(0)

如何卸载(重新加载)Python模块?

我有一个长期运行的Python服务器,并希望能够在不重新启动服务器的情况下升级服务.这样做的最佳方法是什么?

if foo.py has changed:
    unimport foo  <-- How do I do this?
    import foo
    myfoo = foo.Foo()
Run Code Online (Sandbox Code Playgroud)

python module reload python-import

759
推荐指数
15
解决办法
59万
查看次数

在IPython中重新加载子模块

目前我正在开发一个包含子模块并使用numpy/scipy的python项目.Ipython用作交互式控制台.不幸的是,我对我现在使用的工作流程不是很满意,我将不胜感激.

在IPython中,框架由一个简单的import命令加载.但是,通常需要更改框架的一个子模块中的代码.此时已经加载了一个模型,我使用IPython与它进行交互.

现在,框架包含许多相互依赖的模块,即在最初加载框架时,主模块正在导入和配置子模块.只有在使用重新加载模块时才会执行对代码的更改reload(main_mod.sub_mod).这很麻烦,因为我需要使用完整路径单独重新加载所有已更改的模块.如果reload(main_module)还要重新加载所有子模块,但没有重新加载numpy/scipy 将是非常方便的..

python ipython

329
推荐指数
7
解决办法
12万
查看次数

没有定义给出NameError:name'reload'的重新加载模块

我正在尝试重新加载我已经在Python 3中导入的模块.我知道你只需要导入一次并import再次执行命令就不会做任何事情.

执行reload(foo)是给出这个错误:

Traceback (most recent call last):
    File "(stdin)", line 1, in (module)
    ...
NameError: name 'reload' is not defined
Run Code Online (Sandbox Code Playgroud)

错误是什么意思?

python python-3.x

154
推荐指数
6
解决办法
12万
查看次数

Python3 - 无法在__import__对象上调用reload()?

好吧,出于多种原因,我s = __import__('parse')在Python2中使用的时间最长,现在我需要为某些项目转换到Python3(主要是由于SSL).

但就reload()我发现而言,Python3中并没有相应的内容.只有一个选择:

import parse
parse.reload() #works
Run Code Online (Sandbox Code Playgroud)

但我真的,真的需要这个工作:

parse = __import__('parse')
parse.reload()
Run Code Online (Sandbox Code Playgroud)

要么

reload(parse)
Run Code Online (Sandbox Code Playgroud)

关于如何让它在Python3中运行的任何想法?

python module reload python-3.x python-3.3

35
推荐指数
1
解决办法
3万
查看次数