NameError:名称'reload'未定义为python 3.6.4

时间:2018-01-24 19:45:11

标签: python django

安装Xadmin后,我遇到了一些问题。这些是我的错误详情:

[File "C:\Users\Harry\PycharmProjects\mxonline\lib\site-packages\xadmin\sites.py", line 9, in <module>
    reload(sys)
    NameError: name 'reload' is not defined][1]    

我试过import importlib importlib.reload(sys)但它仍然无效。我使用的是python 3.6.4。

2 个答案:

答案 0 :(得分:1)

假设我理解了该问题,您在从reload包中导入importlib时遇到问题,并且在尝试使用NameError时遇到reload

如果这一切都正确,请确保正确导入reload。如果您只是想reload尝试:

from importlib import reload

这将导致reload,同时以名称reload提供from importlib import reload as foo 。如果你想给它一个别名,你可以这样做:

import importlib as il

最后,如果您需要所有importlib,您还可以将包导入为别名:

il.reload(sys)

然后像这样使用重新加载:

var oldStartTime = 0;
var mainMeetingList= [];
var oldObj = {
    startTime: "",
    meetings: []
};
meeting.forEach(function(obj, index) {
    if(oldStartTime != obj.start_time) {
        oldObj =  {
    start_time: obj.start_time,
    meetings: [obj]
};

oldStartTime = obj.start_time;
mainMeetingList.push(oldObj);
    } else {
    oldObj.meetings.push(obj);
}

});

答案 1 :(得分:0)

这段代码做得非常奇怪且与Python 3不兼容。从reload导入importlib将无济于事,即使您要编辑库的代码以导入{{ 1}},因为它也依赖于{3}上不存在的reload

要在Python 3上使用此代码,您必须安装更新版本directly from github,因为最新版本没有修复。但是,我不知道代码是否存在Python 3的其他问题。就个人而言,我可能根本不会使用xadmin。