在翻译中乱七八糟,对我来说,能够按照reload(foo) as f
的方式做一些事情是有用的,尽管我知道这是不可能的。就像我import foo as f
一样,有没有办法做到这一点?
使用Python 2.6
谢谢!
答案 0 :(得分:6)
如果您首先导入import foo as f
,那么重新加载调用可以是reload(f)
答案 1 :(得分:2)
正如其他人所说,只需使用您用作别名的名称重新加载。但是,由于Python 3中不推荐使用imp
,因此您现在应该使用importlib
执行此操作。我们假设您的原始导入使用了如下别名:
import fullLibName as aliasName
然后重新加载别名:
importlib.reload(aliasName)
答案 2 :(得分:1)
import foo
f = reload(foo)
如果我理解你的问题,这应该有用。
如果你实际上不需要重新加载库,你可以按照Martijn的建议去做,只需重新分配foo。
f = foo
答案 3 :(得分:0)
imp
module为您提供了更多访问导入内部的权限,您可以导入任何源文件(即它不需要在路径中)。
E.g。
anyname = imp.load_source("SOME NAME", FILEPATH)