重新运行导入的python模块

时间:2015-08-29 19:10:21

标签: python import

非常新的Python,我有一个非常基本的问题(我担心它是如此基本,以至于我不知道如何在档案中研究这个问题)。

我已经创建了基本模块,可以将它们导入到Python 3.4.3 Shell中。导入时,模块只运行一次。尝试使用exec()或其他功能并没有成功。我确定我遗漏了一些基本的东西,但是如果我们最初导入模块怎么能重新运行?尝试谷歌这个问题并没有成功。

1 个答案:

答案 0 :(得分:2)

通常只在模块中定义功能。

myModule.py

def myFunction(myArg):
    myArg = myArg + 1
    return myArg

main.py

import myModule
myModifiedValue = myModule.myFunction(myOriginalValue)

使用以下命令为您的模块编写测试:

module.py

if __name__ == "__main__":
    if myFunction(5) != 6:
        print("Function doesn't work correctly!")
    else:
        print("Function works for argument '5'.")

只有在运行myModule.py时才会进行测试,而不是在main.py中导入myModule.py

如果您确实要重新加载模块,请使用reload功能。

reload已移至Python 3.x中的imp.reloadreload函数应 NOT 用于直接在模块中执行代码!您应该仅使用它来重新加载模块的功能。