こんにちは、しらすです。
しばらくAnaconda環境を使ってVisualStudioCodeでコードを書いていたんですが、ふとした時にHomebrewを入れたらライブラリが全部読み込みエラーに。。。
色々探した結果なんとか解決した(理解すれば非常に簡単な話だった)ので、メモとして残しておきたいと思います。
ライブラリが突然読み込めなくなった原因
![](https://teshi-learn.com/wp-content/uploads/2021/09/image-6.jpg)
原因はVisualStudioCodeのインタープリター(使用するPythonの環境)がAnacondaからHomebrewに切り替わっていたためでした。現在の環境で設定されているパスを見てみると、ことごとくHomebrewに紐づいています。
おそらくHomebrewインストール時に気づかずに切り替えたんだと思われます。ライブラリはAnaconda側のbase環境にインストールしており、Homebrew側の環境には何のライブラリもインストールされていないため、ライブラリが読み込めなくなっていました。
![](https://teshi-learn.com/wp-content/uploads/2021/09/image-1.jpg)
ちなみにHomebrewはAnacondaと同じくoptフォルダ以下にインストールされています。
インタープリターをAnacondaに戻せばOK
![](https://teshi-learn.com/wp-content/uploads/2021/09/image.jpg)
HomebrewのPythonではなく、AnacondaのPythonを使用することで解決できます。手順も簡単(ここまで状況を理解して、解決策にたどり着くのが時間がかかりました。。。)
まずは「command」+「shift」+「p」でコマンドパレットを表示させます。
コマンドパレットに「Python:Select Interpreter」と入力すると上の写真のように「インタープリターを選択」と出てきますので、これを選択しましょう。
![](https://teshi-learn.com/wp-content/uploads/2021/09/image-3.jpg)
設定できるPython環境の一覧が出てきます。ここでanaconda3を選べばOKです(私の場合は「/opt/python3/bin/python」になります)。
変更されたかを確認しましょう
![](https://teshi-learn.com/wp-content/uploads/2021/09/image-5.jpg)
VisualStudioCodeでPythonファイルを作成し、以下のコードを入れて実行してください。
import sys
print(sys.version)
print(sys.path)
print(sys.path)で、現在設定されているパスを表示しています。先ほどインタープリターをanacondaにあるPythonに変更したので、うまく切り替わっていればパスが/opt/anaconda3/xxxになっているはずです。
参考
teratailの質問を参考にさせていただきました。
![](https://teshi-learn.com/wp-content/uploads/cocoon-resources/blog-card-cache/bc04f2415c5118ce2a37ba959747a2ea.png)
コメント