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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

8696閲覧

PILが認識されません

TvxyAl

総合スコア1

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

1グッド

1クリップ

投稿2020/08/12 07:18

編集2020/08/12 09:02

前提・実現したいこと

画像を表示させるアプリを作っています

発生している問題・エラーメッセージ

Traceback (most recent call last): File "C:/Users/user/Desktop/Python練習/0812/0812-3-gazou.py", line 3, in <module> import PIL.Image ModuleNotFoundError: No module named 'PIL'

該当のソースコード

python

1import PIL.Image

試したこと

教本に沿ってWindowsで簡単なアプリから作っています。
pillowをインストールするため、教本通りコマンドプロンプトでpip install pillowと打ったのですが'pip'が認識されなかったのでpython -m pip install pillowと打ってインストールしました。

補足情報(FW/ツールのバージョンなど)

python3.8
IDLE

YRyN👍を押しています

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

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

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

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

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

can110

2020/08/12 07:24

pythonのバージョン(3.8など)を記載ください。 また、今一度「python -m pip install pillow」を実行して表示された結果を記載ください(正常終了しているか?)
TvxyAl

2020/08/12 07:30

ありがとうございます python3.8 となっています。 python -m pip install pillow とコマンドプロンプトに打ち込んでも何も出てこず、改行されるのでインストール出来ていると思っているのですが、本来であれば何か表示されるのでしょうか? また、anacondaもインストールされていますが関係はありますでしょうか?
can110

2020/08/12 07:35

たしかanaconda環境なら最初からpillowがインストール済みだったと思うのですが anaconda環境(=anacondaプロンプト)で実行しても同様にエラーになりますか?
TvxyAl

2020/08/12 07:48

ありがとうございます。 今は、IDLE(python3.8 32-bit)で作業しています。 今試しにanacondaのJupiternotebookでIDLEで書いていた全体のコードを打ち込んだところ、期待されるダイアログが表示されません、、、 ただ、先ほどのようなPILに対するエラーは発生していません。 anacondaプロンプトにpython -m pip install pillow と打ち込むと Requirement already satisfied: pillow in c:\users\user\anaconda3\lib\site-packages (6.2.0) と表示されます。 IDLEで作業を続けたいのですがどのようにしたらよいのでしょうか?
TvxyAl

2020/08/12 07:52

重ねてすみません、Jupiternotebookの方ではダイアログちゃんと出てきていました。 IDLEでのみ出来ない状態です。。。 よろしくお願いします
can110

2020/08/12 07:56 編集

素のPython環境およびIDLEは使っていないので、すみませんが分かりません。 anaconda環境があるのであればそちらを使うこと およびIDLEはIDEとして貧弱なので使わないことをお勧めします。
TvxyAl

2020/08/12 08:07

そうなんですね ありがとうございます。 ただ、自分の持っている本がIDLEでの作業を前提としていて、「作った関数を同じフォルダに保存してインポートする」だとかanaconda環境とは少し違った形で進めているんです。 自分は本当の初心者で、anacondaで作業するにはここをこう修正したらいいなどといったことが思いつかないほどの低レベルです。なのでできればとりあえずできる限りこの本のやり方からは外れたくないというのが現状です。。。 can110さんの回答、とても参考になりました。 もう少し調べてみてどうしても改善されないようでしたらanacondaで作業を進めようと思います。 ありがとうございました。
meg_

2020/08/12 08:42

> python -m pip install pillowと打ってインストールしました。 インストール先をパスに追加すればIDLEで認識出来ないでしょうか? 出来なければIDLE上でsys.pathに追加してあげると出来そうな気がします。 ちなみに当方はAnaconda付属のIDLEでimport PILでインポート出来ました。(import PIL.Imageはエラーになりましたが)
TvxyAl

2020/08/12 08:49

ありがとうございます。 すみません、パスを通すというのがいまいちピンと来ていなくて、、、 もしよろしければ具体的な方法か、もしくはホントの初心者にもわかるように書かれたページなどがあれば教えていただきたいです、、、 自分もanacondaのインストール時に使用したIDLE使用しています。 今のまま import PIL としたのですが Traceback (most recent call last): File "C:/Users/user/Desktop/Python練習/0812/0812-3-gazou.py", line 3, in <module> import PIL ModuleNotFoundError: No module named 'PIL' というエラーになりました。
meg_

2020/08/12 09:25

ところでimportできないのはPILだけですか?他のモジュールはimport可能ですか? anacondaであれば「anaconda3\\lib\\site-packages」以下にインポートしたモジュールがあるかと思います。※anaconda3はanacondaをインストールしたフォルダです。適時読み替えてください。 import sys; sys.pathでそこのパスは表示されますか? 表示されない場合はWindowの環境変数Pathに追加しましょう。
TvxyAl

2020/08/12 11:35

もともと実装されているモジュールや、同じフォルダに保存したほかファイルからだとインポートできました。 コマンドプロンプトを利用したものはこれ以外試していません 回答していただいたとおりにしたらできましたー
meg_

2020/08/12 12:06

anaconda付属のモジュールは下記で確認できます。 https://docs.anaconda.com/anaconda/packages/pkg-docs/ > もともと実装されているモジュール 上記が何のことを指しているのか分かりませんが、Windows、python3.8ならばPillowは元々入っているはずなんですが。
TvxyAl

2020/08/12 12:23

すいません、まだ慣れていないので何といえばよいのか、、、 random,calenderなどのことです
guest

回答1

0

ベストアンサー

おそらく使用しているIDLEと違う環境のPATHが通っているのが原因なので、IDLEの環境のpipをフルパスで実行すれば上手くインストールできると思います。

pipのフルパスは以下の手順で確認できます。

Windows キーを押下->左側のバーからpython3.8を選択->展開されたアプリ(どのアプリでもok)の上で右クリック->その他ファイルの場所を開くの順に選択
イメージ説明

アプリのショートカットが表示されるので
IDLEまたはPythonのどちらかのファイルを選択して右クリック->ファイルの場所を開くを選択->Scriptsフォルダを開く

pipの場所が表示されるので
pip.exeを選択->ウィンドウ上部のホームタブを選択->パスのコピーを選択
イメージ説明

以上によりpipのフルパスがコピーできます。

これをターミナルでペーストしてコマンドを実行すればpillowが現在使っているIDLEの環境にインストールできるようになると思います。

terminal

1>コピーしたパス install pillow

投稿2020/08/12 09:06

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

退会済みユーザー

退会済みユーザー

2020/08/12 11:54 編集

修正依頼の方のコメント見ました。 パスについては以下の記事が参考になると思います。 https://wa3.i-3-i.info/word1166.html https://qiita.com/sta/items/63e1048025d1830d12fd また、今後IDLEで学習を進めて行くなら環境変数Pathを変更してpipコマンドを簡単に実行できるようにした方が良さそうです。それかanacondaのIDLEを使うようにするか。 コマンドプロンプトで「path」 IDLEで 「import sys import pprint pprint.pprint(sys.path)」 と実行したときの結果はどうなりますか?
TvxyAl

2020/08/12 11:44

ありがとうございます! 回答の通りに試したらできました。 まだなぜそうなるのか分からないので勉強させていただきます。 コマンドプロンプトにpathと打ち込むと PATH=C:\Program Files\National Instruments\Shared\OpenVINO\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\nodejs\;C:\Program Files (x86)\IVI Foundation\VISA\WinNT\Bin\;C:\Program Files\IVI Foundation\VISA\Win64\Bin\;C:\Program Files (x86)\National Instruments\Shared\LabVIEW CLI;C:\Program Files (x86)\IVI Foundation\VISA\WinNT\Bin;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Users\h d\AppData\Local\Microsoft\WindowsApps;C:\Users\h d\AppData\Roaming\npm;C:\texlive\2019\bin\win32; と表示されます。 IDLEに「import sys import pprint pprint.pprint(sys.path)」 を打ち込むと ['C:/Users/h d/Desktop/Python練習/0812', 'C:\Users\h ' 'd\AppData\Local\Programs\Python\Python38-32\Lib\idlelib', 'C:\Users\h ' 'd\AppData\Local\Programs\Python\Python38-32\python38.zip', 'C:\Users\h ' 'd\AppData\Local\Programs\Python\Python38-32\DLLs', 'C:\Users\h d\AppData\Local\Programs\Python\Python38-32\lib', 'C:\Users\h d\AppData\Local\Programs\Python\Python38-32', 'C:\Users\h ' 'd\AppData\Local\Programs\Python\Python38-32\lib\site-packages'] となりました。すみません、名前のところだけイニシャルだけ残して消しました。 これで何かわかるのでしょうか?
退会済みユーザー

退会済みユーザー

2020/08/12 13:55 編集

すみません。 「path」ではなく「where python」で十分でした。 ただ原因が分かったので(たぶん)「where python」は実行しなくて大丈夫です。 >これで何かわかるのでしょうか? この「where python」と「pprint....」は外部ライブラリのインストールが上手くいかなかったときによく使うコマンドです。 このコマンドにより、環境変数pathに設定されているpythonとIDLEで使っているpythonを比較することで環境の整合性を調べることができます。 出力結果をみたところTvxAlさんの環境の場合、 IDLEで使われるpython: "C:\Users\h d\AppData\Local\Programs\Python\Python38-32\python.exe" 環境変数pathに設定されているpython: "C:\Users\h d\AppData\Local\Microsoft\WindowsApps\python.exe" となっていました。 そのためターミナルで「python -m pip install pillow」と実行しても、環境変数pathで設定していたpythonにインストールされ、IDLEで使われてるpythonにはインストールされていなかったと考えられます。 IDLEのpythonにインストールできるようにするには環境変数PathにIDLEのpythonを設定する必要があります。 以下のサイトを参考にパスを設定してみてください。 設定するパスは「C:\Users\h d\AppData\Local\Programs\Python\Python38-32」です。 https://www.scc-kk.co.jp/scc-books/java8_workbook/java_dev-win10.html 次に以下のサイトを参考にアプリ実行エイリアスの設定を「オフ」にしてください。 サイトでは項目が4つしかありませんが実際にはもっとたくさん出てきます。 pythonという項目があるのでそれだけ「オフ」にしてください。 https://yoshida.blog.itsrv.net/archives/354.html これで設定完了です。 ターミナルで「python -m pip list」とすればIDLEのpythonが実行され、パッケージのリストに先ほどインストールした「pillow」が表示されるはずです。 「python -m pip install numpy」と実行すればnumpyがimportできるようになります。
TvxyAl

2020/08/13 14:59

丁寧な説明ありがとうございます。 試してみたのですが、二つ目のエイリアスについて、アプリ実行エイリアスの項目にPythonが見当たりません、、、 なのでそのまま触らずにコマンドプロンプトに「python -m pip list」と打ち込んだのですが、改行がされるだけで特に何も変化が見られません また、昨日教えていただいたようにコマンドプロンプトに「>コピーしたパス install pillow」を入力したところ改行されたのち、IDLEの白紙のファイルが二つ出てきます。 昨日はインストールバーのようなものが出てインポートを始めたのですが今回はそれが確認できません。 昨日あれから一度パソコンをシャットダウンしたことも関係しているのでしょうか? pillowを使うコードを走らせたら恐らく動いているのでもうインポート済みであり、バーが表示されないのは正常なのでしょうか? 「>コピーしたパス install pillow」のpillowの代わりにnumpyやmatplolibを入力しても同様に白紙のファイルが開きます、、、 すみません、自分でもなんと伝えたらよいのか分からず支離滅裂な文になってしまいましたが、もしよろしければ教えていただきたいです。 よろしくお願いいたします。
退会済みユーザー

退会済みユーザー

2020/08/13 16:20 編集

>アプリ実行エイリアスの項目にPythonが見当たりません 「アプリ インストーラー」をオフにしてみてください。 >IDLEの白紙のファイルが二つ出てきます。 IDLEのショートカットファイルをコピーしていませんか? 回答の手順通りpipのファイルをコピーして再度試してみてください。 パソコンをシャットダウンしたことは関係ないと思います。
退会済みユーザー

退会済みユーザー

2020/08/13 16:21 編集

また、インストールする際に表示されていたバーはインストールの進捗状況を表すものです。 既にインストールしているものを再度インストールしようとする場合は表示されません。 代わりに「Requirement already satisfied: ...」というメッセージが表示されます。
TvxyAl

2020/08/14 04:37

お忙しい中ありがとうございます。 アプリイントーラーをオフに設定しました。 すみません読み飛ばして、pipではなくPythonのパスのコピーをしていたようです。 pipのパスをコピーしてinstallしたらちゃんとできました。 とてもわかりやすい解説ありがとうございました。 助かりました。 python -m pip install ~ としたらインストールできるのですが pip install ~ とすると依然として 「'pip' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 と出てくるのですが、これは仕方ないのでしょうか?
退会済みユーザー

退会済みユーザー

2020/08/14 07:10

pipのプログラムは設定したパスとはまた違うパスに保存されているので追加で設定する必要があります。 「C:\Users\h d\AppData\Local\Programs\Python\Python38-32\Scripts」を環境変数Pathに設定してみてください。
TvxyAl

2020/08/15 05:21

ありがとうございます。 まだ勉強不足でやり方が分からないので、調べてから試してみます。 大変お世話になりました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問