我将枕头模块安装在虚拟环境中,如下所示:
(venv)$python -m pip install --upgrade Pillow
Collecting Pillow
Downloading Pillow-7.2.0-cp38-cp38-manylinux1_x86_64.whl (2.2 MB)
|████████████████████████████████| 2.2 MB 2.4 MB/s
Installing collected packages: Pillow
Successfully installed Pillow-7.2.0
VS Code解释器与终端版本相同:
$python --version
Python 3.8.0
$ which python
/mnt/d/github/python_dev/venv/bin/python
但是当我运行from Pillow import Image
时,我仍然得到ModuleNotFoundError
:
$ ../venv/bin/python images.py
Traceback (most recent call last):
File "images.py", line 1, in <module>
from PIL import Image
ModuleNotFoundError: No module named 'Pillow'
我知道有很多关于该主题的帖子,但是我仍然停留在这里将近半天。修复它的最佳方法是什么?
答案 0 :(得分:0)
没有类似以下的命令:-
from Pillow import Image
Python喜欢将Pillow模块导入为PIL。
因此,请尝试使用:-
from PIL import Image
对我有用。 :)
答案 1 :(得分:0)
没有魔术。每次发生这种情况时,您都可以自己调试它:
(venv) etoneja@ois ~/Projects/***/venv/lib (master)$ grep -r -w "class Image"
python3.8/site-packages/PIL/Image.py:class Image:
和
(venv) etoneja@ois ~/Projects/***/venv/lib (master)$ find . -iname "Pil"
./python3.8/site-packages/PIL
还要检查此输出
(venv) etoneja@ois ~/Projects/***/venv/lib (master)$ pip list
Package Version
------------- --------
Pillow 7.1.2
如果没有枕头,则说明您的安装有问题。 检查您是否激活了当前的静脉。
答案是
from PIL import Image
答案 2 :(得分:0)
您似乎有2个问题:
from Pillow import Image
。
看到您的问题是针对VS Code的,这是解决问题2的逐步方法。
cerberus@test$ python3.8 -V
Python 3.8.5
cerberus@test$ python3.8 -m venv ~/.venvs/venv
~/.venvs
中创建名称为venv
(same as yours的venv,并使用Python 3.8(您可以在任意位置存储venv目录)cerberus@test$ source ~/.venvs/venv/bin/activate
(venv) cerberus@test$ python -V
Python 3.8.5
(venv-name)
Python: Select Interpreter
(venv) cerberus@test$ python -V
Python 3.8.5
(venv) cerberus@test$ python -m pip install Pillow
Collecting Pillow
Using cached Pillow-7.2.0-cp38-cp38-macosx_10_10_x86_64.whl (2.2 MB)
Installing collected packages: Pillow
Successfully installed Pillow-7.2.0
(venv) cerberus@test$ python
Python 3.8.5 (default, Jul 21 2020, 10:48:26)
[Clang 11.0.3 (clang-1103.0.32.62)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from PIL import Image
>>>
>>> import PIL
>>> PIL.__path__
['/Users/cerberus/.venvs/venv/lib/python3.8/site-packages/PIL']
python
解释器的完整路径。只需python
就可以了。