如何在Python控制台中重新加载模块?

时间:2019-01-11 18:15:43

标签: python django python-3.x console reload

我在Python 3.7中使用PyCharm。在我的Python控制台中,如何重新加载已更改的模块?我创建了一个文件“ services.py”,在其中创建了服务类

<div class="column1">
  Welcome To/ Programming
</div>

<div class="column2">
  <span>Welcome</span><span class="break">To/</span><span class="break">Programming</span>
</div>

当我在控制台中对此进行测试时,我似乎无法弄清楚如何重新加载它。这是我得到的错误

class ArticlesService:
    def process(self):

如何引用我的课程以重新加载? (或者更好的是,如何使控制台自动重新加载已更改的所有内容?)

1 个答案:

答案 0 :(得分:0)

from mainpage.services import ArticlesService仅将类导入您的名称空间,因此您没有对名称空间中的模块的引用。来自importlib.reload文档:

  

重新加载以前导入的模块。该参数必须是模块对象,因此必须在之前成功导入。

因此,如果要稍后重新加载,请确保导入模块:

import importlib
import mainpage
from mainpage.services import ArticlesService

...

importlib.reload(mainpage)

这也应该工作:

import importlib
import mainpage.services
from mainpage.services import ArticlesService

...

importlib.reload(mainpage.services)