質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

1回答

727閲覧

PILが認識されない

Minibox585

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2022/05/21 03:02

編集2022/05/24 11:10

PILがインストールされているはずなのに下のエラーメッセージが出ます。

画像の文字を認識させて文字列を表示させるプログラムを作ろうとしたところ、モジュールが読み込まれませんでした。

python3.9.7

1 from PIL import Image 2ModuleNotFoundError: No module named 'PIL'

pillowのバージョンは9.1.1です。
初めて質問するので解決するのにどんな情報が必要なのかわかりません。「この情報が無いとわからない」などありましたらそれも教えてください。

急用で外に出ていて確認が遅れてしまい申し訳ありませんでした。
追記:PILはanaconda3に入っていました。使っているパソコンはwindows11です。

どのような操作をした結果か…というのがよく理解ができませんでしたが、確かにpythonがanacondaとAppdataの二つに存在していました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TakaiY

2022/05/21 03:14

PILはどのようにインストールしましたか。 エラーの出たときの操作について追記してください。 作業環境についての情報を教えてください。 (Windows、 Macなど) 回答はここに書くのでなく、質問を編集して追記してください。
TakaiY

2022/05/21 09:39

「エラーの出たときの操作について追記してください。」この情報も必要です。 どのような操作をしたけっかのエラーですか。 こういう問題は、大抵 pythonが複数インストールされていて発生します。 その切り分けが必要です。
jbpb0

2022/05/22 23:45 編集

pythonで from PIL import Image がうまくいかない状態で、下記のpythonコードを実行してください import sys import pprint pprint.pprint(sys.path) たくさんパスが表示されますが、その中にパスの最後が「site-packages」のものがあるはずです (複数あるかも) そのパスの場所を調べてください そこに、「PIL」という名前のディレクトリと、名前が「Pillow-」で始まるディレクトリはありますでしょうか? 無ければインポートできません
jbpb0

2022/05/22 23:49 編集

> PILはanaconda3に入っていました。 from PIL import Image がうまくいかない状態で、使われてるpythonの絶対パスを調べてみてください https://hawk-tech-blog.com/python-learn-get-full-path-of-interpreter/ (ユーザー名等の個人情報は伏せ字にして) 上記で調べたpythonの絶対パスは、anacondaのものでしょうか?
Minibox585

2022/05/24 05:24

site-packagesのパスの先にはありませんでしたが、ほかの所に入っていました。これをsite-packagesの所へ入れたらインポートできるようになりますか? python の絶対パスは C:\Users\(名前)\anaconda3\python.exeでした。
jbpb0

2022/05/24 07:10

> これをsite-packagesの所へ入れたらインポートできるようになりますか? それをやるとトラブルの原因になるので、やらない方がいいです
jbpb0

2022/05/24 12:46 編集

> python の絶対パスは C:\Users\(名前)\anaconda3\python.exeでした。 より、使ってるpythonはanacondaのですよね そのanacondaのpythonのsys.pathにPILがあるのかを確認したら、 > site-packagesのパスの先にはありませんでした だったので、anacondaにはPILは入ってないことになりますが、それと質問に書かれてる > PILはanaconda3に入っていました。 は矛盾しますよね 状況がよく分からないので、下記を教えてください ・現状で「PIL」という名前のディレクトリと、名前が「Pillow-」で始まるディレクトリが実際にある「ほかの所」のパス ・anacondaのpythonで「pprint.pprint(sys.path)」を実行した結果 (ユーザー名等は伏せ字にしていいですが、それ以外はできるだけ省略しないでください)
Minibox585

2022/05/25 03:46 編集

調べたところPILが二つ入っているのが分かりました。 "C:\Users\名前\kivy_venv\Lib\site-packages\PIL" "C:\Users\名前\anaconda3\Lib\site-packages\PIL" anacondaとkivy(?)に入っているそうです
jbpb0

2022/05/24 12:45 編集

> 調べたところPILが二つ入っているのが分かりました。 "C:\Users\名前\kivy_venv\Lib\site-packages\PIL" "C:\Users\kota1\anaconda3\Lib\site-packages\PIL" 「C:\Users\kota1\anaconda3\Lib\site-packages」には、「名前が「Pillow-」で始まるディレクトリはありますか? (そこに「PIL」という名前のディレクトリがあるのは、上記から分かりました) あと、anacondaのpythonで下記を実行した結果を教えてください (ユーザー名等は伏せ字にしていいですが、それ以外はできるだけ省略しないでください) import sys import pprint pprint.pprint(sys.path)
Minibox585

2022/05/25 03:55

Pillow-9.1.1.dist-info というファイルがありました。 anacondaのpythonとはどういうことでしょうか...?anacondaでVScodeを起動すればいいんでしょうか?
jbpb0

2022/05/25 04:52

> anacondaのpythonとはどういうことでしょうか...? 「anacondaのpython」とは、 > python の絶対パスは C:\Users\(名前)\anaconda3\python.exeでした。 のpythonのことです 別の言い方をすると、「C:\Users\名前\kivy_venv」の下のpythonでは無いもの、という意味です
jbpb0

2022/05/25 04:56

> Pillow-9.1.1.dist-info というファイルがありました。 つまり、「C:\Users\kota1\anaconda3\Lib\site-packages」には、「PIL」という名前のディレクトリと、名前が「Pillow-」で始まるディレクトリがあるのですね それなら、「anacondaのpython」(C:\Users\(名前)\anaconda3\python.exe)でインポートできるはずなのですが、なぜできないか不思議です それで、「anacondaのpython」の「sys.path」を伺ってます
Minibox585

2022/05/25 06:48

>>> import sys >>> import pprint >>> pprint.pprint(sys.path) ['', 'C:\\Users\\名前\\anaconda3\\python39.zip', 'C:\\Users\\名前\\anaconda3\\DLLs', 'C:\\Users\\名前\\anaconda3\\lib', 'C:\\Users\\名前\\anaconda3', 'C:\\Users\\名前\\AppData\\Roaming\\Python\\Python39\\site-packages', 'C:\\Users\\名前\\anaconda3\\lib\\site-packages', 'C:\\Users\\名前\\anaconda3\\lib\\site-packages\\locket-0.2.1-py3.9.egg', 'C:\\Users\\名前\\anaconda3\\lib\\site-packages\\win32', 'C:\\Users\\名前\\anaconda3\\lib\\site-packages\\win32\\lib', 'C:\\Users\\名前\\anaconda3\\lib\\site-packages\\Pythonwin']
jbpb0

2022/05/25 07:17 編集

> python の絶対パスは C:\Users\(名前)\anaconda3\python.exeでした。 で調べた「sys.path」に > 'C:\\Users\\名前\\anaconda3\\lib\\site-packages' が含まれてて、そこには「PIL」という名前のディレクトリと、名前が「Pillow-」で始まるディレクトリがある > python の絶対パスは C:\Users\(名前)\anaconda3\python.exeでした。 で > from PIL import Image ができない ということですか 上記の条件ならインポートできるはずなのですが、変だなぁ 【追記】 > C:\Users\名前\anaconda3\Lib\site-packages\PIL に「__init__.py」という名前のファイルはありますでしょうか?
jbpb0

2022/05/25 09:13 編集

> pillowのバージョンは9.1.1です。 https://anaconda.org/anaconda/pillow を見たら、condaで入れられるのは現状9.0.1までしかリリースされてません https://pypi.org/project/Pillow/ を見たら、pipで入れられるのは現状9.1.1がリリースされてます もしかして、anacondaにpipでpillowをインストールしたのでしょうか? もしそうなら、その時に環境が壊れたのかも anacondaは、たしか普通にインストールしたら元々pillowが入ってるので、追加でインストールする必要はなかったように思います
Minibox585

2022/05/26 03:54

おそらくそれな気がします。pipでインストールしてはいけないことを最近知りました。
jbpb0

2022/05/26 08:33 編集

> pipでインストールしてはいけないことを最近知りました。 pillowは該当しませんが、condaでは入れられないものもあるので、pipで入れないとならない場合もあります その時は、condaで仮想環境を作って、その仮想環境を有効にした状態でpipで入れることをお勧めします そうすれば、もしpip install...で環境が壊れても、その仮想環境を捨てるだけですみます (anacondaの再インストールの必要は無い)
guest

回答1

0

PIL がインストールされているのにエラーになるケースですが
Python と pip のバージョンが合っていない為かもしれません。

下記の内容が参考になるかもしれません。

■ tkinterを使って画像表示ができません。
https://teratail.com/questions/byx6vq8711mqza

投稿2022/05/21 03:14

cx20

総合スコア4633

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Minibox585

2022/05/21 05:22

pipのバージョンは22.1と出ました。pythonのバージョンと数字が違いますが、合っている合っていないはどこで判別できますか? 
cx20

2022/05/21 08:40

下記コマンドの実行結果を教えて頂けますか?(pip のバージョンの他に Python のパスとバージョンが表示されるかと思います) pip --version
Minibox585

2022/05/24 05:24

pip 22.1 from C:\Users\(名前)\anaconda3\lib\site-packages\pip (python 3.9) でした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問