ImportError: Không có mô-đun có tên PIL


207

Tôi sử dụng lệnh này trong shell để cài đặt PIL:

easy_install PIL

sau đó tôi chạy pythonvà gõ này : import PIL. Nhưng tôi nhận được lỗi này:

Traceback (most recent call last):
  File "<console>", line 1, in <module>
ImportError: No module named PIL

Tôi chưa bao giờ gặp vấn đề như vậy, bạn nghĩ gì?


Vâng, nó hoạt động. Đề xuất của bạn là gì?
Asma Gheisari

11
@RikPoggi Trang này của tài liệu thực sự cho biết để sử dụng from PIL import Image, không hoạt động.
Janne Karila

2
@Janne chỉ cần sử dụng Nhập hình ảnh và PIL bắt đầu hoạt động.
Asma Gheisari

Tại thời điểm này, tôi khuyên bạn nên easy_install Pillowthay thế. Gối là một nhánh của PIL có bao bì tốt hơn và hỗ trợ Python 3.
Lennart Regebro 23/07/13

1
Bạn có thể thay đổi câu trả lời được chấp nhận thành câu trả lời đề nghị Gối không? Như @LennartRegebro đã nói, gói này tốt hơn về lâu dài.
Josiah Yoder

Câu trả lời:


131

Trên một số cài đặt của PIL, Bạn phải làm

import Image

thay vì import PIL(PIL trên thực tế không phải lúc nào cũng được nhập theo cách này). Vì nó import Imagehoạt động cho bạn, điều này có nghĩa là trên thực tế bạn đã cài đặt PIL.

Có một tên khác cho thư viện và mô-đun Python là không bình thường, nhưng đây là tên được chọn cho (một số phiên bản) PIL.

Bạn có thể nhận thêm thông tin về cách sử dụng mô-đun này từ hướng dẫn chính thức .

PS : Trong thực tế, trên một số cài đặt, import PIL không hoạt động, điều này làm tăng thêm sự nhầm lẫn. Điều này được xác nhận bởi một ví dụ từ tài liệu , như @JanneKarila đã phát hiện ra, và cũng bởi một số phiên bản gần đây hơn của gói PIL MacPorts (1.1.7).


141
pip install imagetừ câu trả lời của Zhiming làm việc cho tôi.
Jim Schubert

9
vâng, @JimSchubert đã nói điều đó. pip install imagecũng @zhimmingwanglàm việc cho tôi
Rafael Ruiz Muñoz

5
Nhưng không phảiimage là PIL (như trong câu hỏi), đó là một mô-đun khác. Tham khảo: github.com/francescortiz/image . Am i thiếu cái gì ở đây?
Eric O Lebigot

2
Bạn nên kiểm tra xem bản pipcài đặt của bạn cho trình thông dịch python mà bạn đang sử dụng. pip -Vcho bạn biết nơi nó cài đặt. Trong Unix, which pythoncho bạn biết pythonlệnh của bạn ở đâu . Hai người nên kết hợp đủ tốt. Hoặc, tốt hơn: python -c 'import sys; print sys.path'sẽ cho bạn biết pythonlệnh của bạn tìm mô-đun ở đâu ( print(sys.path)đối với Python 3).
Eric O Lebigot

1
@EricOLebigot Yours là một giải pháp dường như bị đánh giá thấp, đề xuất của bạn đã giải quyết vấn đề của tôi một cách hoàn hảo và ngăn tôi tải xuống bất kỳ gói nào khác
Scott Anderson

281

Trong vỏ, chạy:

pip install Pillow

Chú ý: PIL không được dùng nữa, và gối là sự kế thừa.


7
Có thật không? imagekhông module PIL của câu hỏi, đó là thay vì một "Django ứng dụng" (điều đó xảy ra được dựa trên PIL). Tham khảo: github.com/francescortiz/image .
Eric O Lebigot

8
Tại sao điều này có upvote? imagecó thể là một thư viện hữu ích, nhưng nó không liên quan đến câu hỏi.
gwg

2
pip install imageđã làm cho tôi. cảm ơn bộ đệm duckduckgo để giữ câu trả lời trước khi chỉnh sửa!
Zahra

Phương pháp này hữu ích với tôi.
Bravo Yeung

Tôi đã thấy PILLOW những nơi khác, Gối ở đây. cmdkhông phân biệt chữ hoa chữ thường, nhưng cách viết ưa thích này là gì?
Josiah Yoder

53

Một lưu ý khác, tôi rất có thể khuyên bạn nên sử dụng Gối tương thích ngược với PIL và được duy trì tốt hơn / sẽ hoạt động trên các hệ thống mới hơn.

Khi cài đặt xong, bạn có thể làm

import PIL 

hoặc là

from PIL import Image

Vân vân..


Không có câu trả lời nào khác khắc phục được vấn đề tôi gặp phải, nhưng câu trả lời này thì có.
MaxJ

49

Lúc đầu cài đặt Gối với

pip install Pillow

hoặc như sau

c:\Python35>python -m pip install Pillow

Sau đó, trong mã python bạn có thể gọi

from PIL import Image

"Gối là một nhánh của PIL, Thư viện hình ảnh Python, không còn được duy trì. Tuy nhiên, để duy trì khả năng tương thích ngược, tên mô-đun cũ được sử dụng." Từ gối được cài đặt, nhưng "không có mô-đun có tên gối" - python2.7 - Windows 7 - gối cài đặt python -m


5
Tôi đang nhận được Yêu cầu đã được thỏa mãn nhưng vẫn là vấn đề tương tự
Saurabh Chandra Patel

21

Đôi khi tôi gặp loại lỗi này khi chạy Unitest trong python. Giải pháp là gỡ cài đặt và cài đặt cùng một gói trên môi trường ảo của bạn.

Sử dụng các lệnh này:

pip uninstall PIL

pip install  PIL 

Nếu vì bất kỳ lý do nào bạn gặp lỗi, hãy thêm sudo vào đầu lệnh và sau khi nhấn, nhập mật khẩu của bạn.


2
Điều này cũng làm việc cho tôi. Hãy xem xét rằng người ta có thể sử dụng các tập lệnh Python khác sử dụng gián tiếp PIL, thay đổi câu lệnh Nhập không phải lúc nào cũng là một tùy chọn.
Cánh quạt

Điều này không làm việc cho tôi, nó không thể tìm thấy một kho lưu trữ gọi là PIL (hoặc pil). Tuy nhiên tôi đã chạy "Pip install Gối" đã hoạt động. Hiểu biết của tôi là Gối là một nhánh của PIL.
Sab Charrot

@TeeBasins Gối là chiếc ngã ba PIL thân thiện của Alex do Alex Clark và Cộng tác viên.
JC Rocamonde 6/07/2015

1
Tôi nhận được "Không thể tìm thấy phiên bản thỏa mãn PIL yêu cầu (từ các phiên bản :) Không tìm thấy phân phối phù hợp cho PIL"
J.Doe

20

Điều này làm việc cho tôi trên Ubuntu 16.04:

sudo apt-get install python-imaging

Tôi tìm thấy cái này trên Wikibooks sau khi tìm kiếm khoảng nửa giờ.


3
Câu hỏi này đã được hỏi trước Ubuntu 16.04, nhưng tôi đã gặp vấn đề này trong Ubunt 16.04 và đã sửa nó với đề xuất của bạn.
foool

Rất vui vì tôi có thể giúp! : D
grooveplex

Đây là vấn đề của tôi trên RPI với màn hình OLED hiển thị đầu ra của con trăn
Ryan Ellis

10

Tôi đã sử dụng:

pip install Pillow 

và pip đã cài đặt PIL trong gói Lib \ site. Khi tôi chuyển PIL sang Lib, mọi thứ đều hoạt động tốt. Tôi đang dùng Windows 10.


9

Trên windows 10 tôi đã quản lý để đến đó với:

cd "C:\Users\<your username>\AppData\Local\Programs\Python\Python37-32" 
python -m pip install --upgrade pip     <-- upgrading from 10.something to 19.2.2.
pip3 uninstall pillow
pip3 uninstall PIL
pip3 install image

sau đó trong python (python 3.7 trong trường hợp của tôi) điều này hoạt động tốt ...

import PIL
from PIL import image

Sau khi nâng cấp windows 7 lên windows 10, chương trình python của tôi không hoạt động nhưng phương pháp này đã giải quyết nó. Cảm ơn!
dùng1785594

8

bạn phải cài đặt Image và gối với gói python của bạn.

kiểu

python -m pip install image 

hoặc chạy dấu nhắc lệnh (trong windows), sau đó điều hướng đến thư mục scripts

cd C:\Python27\Scripts

sau đó chạy bên dưới lệnh

pip install image

8

nếu bạn sử dụng anaconda:

conda install pillow

1
Tôi đã làm điều này, nó vẫn không thể nhập PIL
john ktejik

@johnktejik Bạn đang sử dụng phiên bản Python và Anaconda nào?
Conor Cosnett

6

Trên các cửa sổ, hãy thử kiểm tra đường dẫn đến vị trí của thư viện PIL. Trên hệ thống của tôi, tôi nhận thấy đường dẫn là

\Python26\Lib\site-packages\pil instead of \Python26\Lib\site-packages\PIL  

Sau khi đổi tên pilthư mục thành PIL, tôi đã có thể tải mô-đun PIL.


Tôi cũng đã nhận được lỗi nhập khẩu tương tự. Tôi đã cài đặt PIL bằng easy_install. Trong các gói trang web, nó đã được cài đặt trong thư mục với tên 'PIL-1.1.7-py2.7-win32.egg'. Theo đề nghị của bạn, tôi đã thay đổi tên dir thành PIL và nó đã hoạt động. Cảm ơn sự giúp đỡ của bạn @Komla.
shashaDenovo

5

Bạn sẽ cần phải cài đặt Hình ảnh và gối với gói python của bạn. Hãy yên tâm, dòng lệnh sẽ lo mọi thứ cho bạn.

Đánh

hình ảnh cài đặt python -m pip


4

thay vì sử dụng PIL Gối nó hoạt động

easy_install Pillow

hoặc là

pip install Pillow


1

Tôi đã sử dụng conda-forge để cài đặt gối phiên bản 5 và dường như nó hoạt động với tôi:

conda install --channel conda-forge pillow=5

gối cài đặt conda bình thường KHÔNG làm việc cho tôi.


0

Tôi gặp vấn đề tương tự khi nhập PIL và tiếp tục nhập các mô-đun ImageTk và Image. Tôi cũng đã thử cài đặt PIL trực tiếp thông qua pip. nhưng không thành công có thể đạt được. Vì ở giữa, người ta đã gợi ý rằng PIL đã bị phá hủy, do đó, đã cố gắng cài đặt gối chỉ qua pip. gối đã được cài đặt thành công, hơn nữa, gói PIL được thực hiện theo đường dẫn: python27 / Lib / site-gói /.

Bây giờ cả Image và ImageTk đều có thể được nhập.


0

Gần đây tôi đã cài đặt Leap. Tôi đã thử openshot và nó đã không bắt đầu. Vì vậy, đã đến đây và tìm thấy một đề nghị để bắt đầu từ Terminal để xem nếu có bất kỳ lỗi.

Lỗi tôi đã có error missing mlt. Vì vậy, tôi đã cài đặt python-mltmô-đun từ Yast và nhập nó, cố gắng khởi động nhưng lần mở tiếp theo cho biếtmissing pil.

Tôi đã làm theo gợi ý Gối để cài đặt vì Yast không thể tìm thấy bất kỳ pil nào và pil nhập khẩu. Điều đó đã ổn nhưng không bắt đầu và hiển thị Error missing goocanvas.

Tôi đã cài đặt goocanvasvới Yast, nhập nó bằng python và Openshot đã kích hoạt !!

Với rất nhiều lỗi trong thiết bị đầu cuối như thế nào missing Vimeoclientvà rất nhiều attributeerrors. Vâng, sẽ xem nếu nó có bất kỳ ảnh hưởng làm việc với nó.


0

Tôi gặp vấn đề tương tự và tôi đã khắc phục bằng cách kiểm tra pip ( pip3 --version) phiên bản nào , sau đó nhận ra tôi đang gõ python<uncorrect version> filename.pythay vìpython<correct version> filename.py


-13

Bạn có thể đang thiếu các tiêu đề trăn để xây dựng pil. Nếu bạn đang sử dụng Ubuntu hoặc những thứ tương tự, nó sẽ giống như

apt-get install python-dev

Bạn đang sử dụng kiến ​​trúc nào, nếu 64bit bạn đang ở trong một thế giới bị tổn thương. Sử dụng phiên bản 32 bit và sử dụng phiên bản tiền biên dịch không chính thức từ đây
Crankyadmin

Đó là 32 bit, tôi đã cài đặt cái này nhiều lần, nhưng lần này tôi gặp vấn đề này
Asma Gheisari
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.