这个问题往往出现在使用conda来配置深度学习环境,为了方便管理,都选择用conda来安装所有库,但是,我现在的经验是除了pytorch官网推荐的conda命令中的包用conda install安装就好了,如果pillow也用conda渠道安装,则会提示找不到模块,具体原因不清楚。可能是依赖关系太复杂了。(注意:在conda命令行也可以pip安装,这是本文采取的做法。)
回答中有说法认为需要降级Pillow,如降到8.3.0等,其实问题可能与版本号关系不大。
解决办法是:
在conda命令行,找到你需要的环境,使用这一行代码:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pillow==8.4.0
这就好了,就这么简单。版本号自己选合适的即可。清华源也不是必须的,只是我的习惯。核心在于用pip路径安装而不是conda渠道,这样pycharm就能正确识别了,你会看到Import torchvision再也没有可恨的找不到模块了。
ModuleNotFoundError:No module named 'PIL'
测试发现无论是8.4还是9.3版本都可以正确识别,反之,即使用conda install 8.4仍提示找不到模块。因为我把这段代码称为神奇的代码。哈哈
推而广之,我们如果出现其他模块找不到,也可以用类似的操作,只需要渠道选择Pip即可。