起因
最近在学pytorch,老是要写torch.xxx太麻烦了,就想:
from torch import *
以为这样就可以不用写那个前缀了
结果调用库的时候报错
原因
import *
只能调用__init__.py
中被写在__all__
里面的函数,而torch的all里面没写nn
详见这篇大佬的解释:Python中__all__的用法
解决方法
自行把模块加上(有点危险)
显然上面这种擅自修改库文件的行为是很危险的,而且你只有这台电脑改,其它电脑没改,会导致你的py文件到其它电脑上就跑不起来了