假设我这样做
import cmath
del cmath
cmath.sqrt(-1)
我明白了
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'cmath' is not defined
但是,当我再次导入cmath
时,我可以再次使用sqrt
import cmath
cmath.sqrt(-1)
1j
但是,当我做以下
时import cmath
del cmath.sqrt
cmath.sqrt(-1)
我明白了
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'sqrt'
即使我再次导入cmath
,我也会遇到同样的错误。
是否可以让cmath.sqrt
回来?
谢谢!
答案 0 :(得分:4)
您需要reload
reload(cmath)
...将从模块重新加载定义。
import cmath
del cmath.sqrt
reload(cmath)
cmath.sqrt(-1)
...将正确打印..
1j