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

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

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

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

Q&A

1回答

2519閲覧

Pythonの仮想環境にてモジュールの格納されている場所へのパスが通らない?

tomiswinner

総合スコア3

Python

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

0グッド

0クリップ

投稿2021/07/25 10:03

編集2021/07/26 06:11

vs code 1.58.2
python 3.7.9

pythonのvenvにて、新たに仮想環境を作成しました。
その後、numpyをインポートしようと試みたのですが、ModuleNotFoundError が発生しインポートすることができません。
(仮想環境自体はPC内にいくつか存在しています)

下の画像の通り、仮想環境は起動しており、
またvs codeも画像左下の通り、仮想環境に存在するpython.exeへのパスは通っている?のですが、
仮想環境のモジュールを使用することができません。
無知で恐縮なのですが、どのように解決すればよろしいでしょうか。

また自分で調べた限りですと、
vs code 内の環境変数などを直接指定することによって解決が図れる?
可能性があると拙いながら認識しているのですが、
仮想環境を作成するたびに指定する必要があるのでしょうか。

vs code 画面

※ためしたことなど
pip list などでモジュールのインストールの確認
pipでの再インストール
vs codeのインタプリタの再選択など
(仮想環境でないデフォルトのpythonをインタプリタとして使用した場合、インポートができています)

初歩的な質問で申し訳ないのですが、ご助力いただけると幸いです。
また、おかしな部分・情報不足な点がありましたら、ご指摘いただきたく思います。

【追記】
迅速なご回答本当にありがとうございます!
追記いただいた内容を実施してみました。

" python -m pip list "を行った場合の結果ですが、
requests も numpy もインストールされているように思われます。(私の理解不足でしたらすみません)
プロンプトというのは、文頭の「(myenv)」はついているので環境もこちらで問題ないでしょうか。

イメージ説明

使用しているインタプリタ
イメージ説明

なかなか解決に至るような手がかりがわからず、、すみません。

【追記2】
コマンドプロンプトで仮想環境に入り、 python -m pip list を実行したところ、
モジュールが全くインストールされておりませんでした。
また、install も試したところ vs code 上では何度もインストール済みと表示されたものが、
インストールが実行され、無事にエラーが解決されました!
ありがとうございます!

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

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

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

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

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

TakaiY

2021/07/25 10:16 編集

その貼り付けてある画像のターミナルで 「python -m pip list」を実行すると、requests はちゃんと存在しますか? プロンプトに(myenv)が付いている環境であることが大事です。
meg_

2021/07/25 10:18

> pip list などでモジュールのインストールの確認 その結果、その仮想環境内に目的のモジュールは存在していましたか?
tomiswinner

2021/07/26 05:16

ご指摘ありがとうございます! 追記いたしました。確認してみたのですが、解決できませんでした、すみません。。
meg_

2021/07/26 06:01

VSCODEを使わずにコマンドプロンプトで試した場合は上手く行きますか?
tomiswinner

2021/07/26 06:13

ありがとうございます! 【追記2】の通りですが、うまくいきました! 無知で恐縮なのですが、 vs code 上ではうまくいかず、コマンドプロンプトで成功したのは、 どのような現象が絡んでいるのでしょうか?
meg_

2021/07/26 07:10

すみませんが、VSCode+venvの組み合わせは使ったことがないので分かりません。
guest

回答1

0

venvというものが作られた目的は拡張ライブラリの環境を切り離すことです。
つまり、baseのPythonがrequestsをインストールするとsite-packaという名前のディレクトリの下にrequestsが格納されますが、venvで作った新しい仮想環境は別のsite-packaという名前のディレクトリを使うようになるので、そこにrequestsが入っていなければ、requestsをimportすることはできません。その理由は、それがvenvが作られた目的だからです。

requestsを使いたければ、その仮想環境にrequestsをインストールしてください。

詳しくはvenv --- 仮想環境の作成をご覧ください。

投稿2021/07/25 11:04

ppaul

総合スコア24672

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

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

tomiswinner

2021/07/26 05:20

ありがとうございます! 確認してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.31%

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

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

質問する

関連した質問