【随時更新】Python環境構築周りのトラブルシューティング&解決まとめ
数百名単位でPython環境構築周りのサポートを行ったのですが類似のケースも多いため、同様の問題で困っている方の解決に役立てられればということでトラブルシューティングとその解決についてまとめていきます。(ケーススタディ的にまとめられればと思うので都度更新します)
対象としては入門〜中級レベルで個人で勉強している方向けです。(とりあえず動くのプライオリティが高いケースを前提とします)
◆ 目次
1. トラブル解決にあたっての基本方針
2. 具体的なトラブルケースとその解決
◆ 詳細
1. トラブル解決にあたっての基本方針
Pythonの環境構築にあたってはまずOSが何かが重要です。大きく分けるとWindows系かMac/LinuxのUnix系の二つに分けることができます。
それぞれ環境の構築としては、Windows系の場合はAnaconda一択、Unix系の場合はpyenv+virtualenvかAnacondaのどちらかになるのではと思います。使い分けとしてはとりあえず使えるようになれば良いならAnaconda、プロジェクト毎に環境切り分けるなど使いこなしたい際はpyenv+virtualenvが良いのではと考えています。
トラブル解決の際は上記のどのパターンかによって調べる事柄が違ってくるので、上記を意識した上で検索すると良いと思います。
2. 具体的なトラブルケースとその解決
2.1 Anacondaでxgboostを入れたい(中級)
How to install xgboost in Anaconda Python (Windows platform)? - Stack Overflow
pipでのインストールで失敗していたようなので、Anacondaにxgboostを導入する方法を調べたところ上記のStack Overflowの記事に行き着いたので、こちらを試したところ解決しました。(Windows向けの質問に対し対応したOSはMacでしたが、Anacondaの場合はpipよりもcondaを使うべきということで解決したようです)
2.2 pyenv利用時にpyenvが使用できない(入門、初級)
pyenvのパス設定が読み込めていないケースでトラブルケースがよくあります。
$ source ~/.bashの設定ファイル
とすることで解決できます。
2.3 パッケージインストールがうまくできない(初級)
ソースからコンパイルする手順が書かれている際もあるのですが、PyPIに上がっているモジュールは基本はpipでインストールが可能です。初心者が個人で勉強する目的であれば『ある程度動けば良い』だと思うので、pipやcondaなどのパッケージインストールのコマンドで入れる方が良いと思います。
また、モジュール名がimport文と違う際はPyPIを確認することでモジュール名を把握することができます。
ケーススタディに関しては思い出したり具体的に遭遇したりなどのタイミングで随時更新していければと思います。