重新加载函数仅工作一次(Python)

2024-04-18 18:55:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在处理一些代码,在这些代码中,我必须访问存储在python其他模块以外的目录中的函数(我的脚本在C:/path/M461/DataMapping中,该模块位于C:/path/M461/ModuleDir中,我知道它的名称是functions.py-original)。我的教授说使用importlib.reload是使用函数的必要条件,但是我在{}中遇到了一个技术错误。这是我的代码:

parentDir = r'C:/path/M461/'
if parentDir not in set(sys.path):
    sys.path.append(parentDir)
from ModuleDir import functions
dir(functions)

import importlib
importlib.reload(functions)

fieldDict = functions.fieldDictBuild()

当我运行它时,它第一次运行得非常完美。任何后续运行文件的尝试都会引发错误:

^{pr2}$

我找到的唯一解决方法是每次运行代码时都完全重新启动内核,这很烦人。有没有办法永久修复这个问题?这是我的代码还是reload模块本身的问题?为什么要重新加载functions?在


Tags: 模块path函数代码import目录脚本错误