とにかくWindowsにPython3、Numpy、Matplotlibをインストールする手順

[最終更新] 2017年2月21日

2016/01/19追記:後日知人より、多少バージョン古くてもいいなら、WindowsだとWinPythonが楽だと教えてもらいました。私は試していませんがご参考までに。

本記事では、Windows 7ないし8で、とにかくPython3とNumpy、Matplotlibをインストールするための手順と、ついでにそれまでの試行錯誤について記述します。

スポンサーリンク

今でも環境構築はたいへん

最近仕事の関係で、複数のWindowsマシンにPython3、Numpy、Matplotlibの環境を構築することになりました。Pythonは今まで触ってこなかったのですが、使ってみると非常に便利で、ライブラリも豊富で、たいへん素晴らしいですね。しかしコミュニティが活動が活発であることの弊害か、情報の陳腐化も早いようです。特に、環境構築という基本的でありながら古代より人々を悩ませ続けた問題は、未だ解決されないどころか、新旧の情報の錯綜という形でより根深い問題となっているように思います。それでも昔に比べたら楽になっていると思いますけれど。

というわけで、2015年6月現在、とにかく細かいことはいいから、Windowsに Python3、Numpy、Matplotlib をインストールするんだ、という手順を書きます。Windowsは7と8で試しました。Python3 としていますが、恐らくPython 2でも問題ありません(2.7.9以降であればpipが同梱されているはずなので)。ここに至るまで色々とハマりましたので、参考のためにハマったポイントについても覚えてる限りまとめてみます。pipとかsetuptoolとか、最近はWindowsでもパッケージ管理システムが出てきたということで、Chocolateyとか試したりしたんです…。

インストール手順

最初に結論として、インストール手順を書きます。まっさらな環境であれば、以下の手順で問題なく環境構築できるはずです。

  1. Pythonの最新版を公式サイトから32bit版をダウンロードする。この際、PATHの設定に注意
  2. Numpyの最新版を公式サイトからダウンロードする
  3. python -m pip をアップグレードした後(しなくてもいいとは思うが)、python-dateutil, pytz, tornado, pyparsing, matplotlib をインストールする

1番について。だいたいどのサイトでも解説されているので大丈夫と思いますが、PATHの設定を忘れずに。インストール時に、バツになっているPATHの設定っぽいところを、OKにしてやると自分でしなくて済むと思います。また、64bit版を入れるとNumpy導入時にエラーになります(「Numpyを入れようとして「python version 3.4 required which was not found in the registry」と怒られた : 或る阿呆の記」)。

3番について。コマンドを書きますと、以下です。

python -m pip install --upgrade pip
python -m pip install python-dateutil pytz tornado pyparsing matplotlib

これで Python3, Numpy, Matplotlib が使えるようになっているはずです。

いくつかの引っかかったところ

色々なサイトを参考にしました。Pythonは活発な活動でどんどん情報が陳腐化しており、そのためにひっかかったところも多くあります。本節では、その中で覚えているところについて記述します。

pipのバージョンが低く、インストールできなかった

ネット上でよく見かけるpipについての情報は、バージョンが1.5.4だったりします。ネットで見つけた方法で適当に入れると、いまでもpipのバージョンはそうなったりします。しかし、現在pipのメジャーバージョンは7です。つまり6つもメジャーバージョンが遅れているということで、問題が発生します。どうも古いバージョンだと、SSLの関係でエラーが生じるようで、インストールコマンドでエラーが発生しました。現在のバージョンではその問題は解決しているようですが、しかしバージョンを上げるにはやはりpipでインストールコマンドを実行せねばならず、事態は金庫の中の鍵の様相を呈します。

pipの最新版はどうやってインストールしたらよいのだろうと色々調べて、setuptoolを使うとかeasy_installを使うとか、色々あったのですが、ダメでした(恐らく、このあたりの情報はもう古いのだと思います)。最終的に、python 2.7.9以降、またはpython3以降では標準でついてくるということで、それじゃあ最新のPython使えばそれでOKだったのか、という単純な解決に至りました。これだけ引っかかったのは、最初はOSXで普通にbrewでインストールしてうまくいき、同じようにLinuxのapt-getでもやろうとしたらバージョンが古くて失敗、というところに問題の発端があったりします。

pipでNumpyがインストールできなかった

これは多分Windows特有の問題で、というのはNumpyのインストールにWindowsではVC++ 10.0のコンパイラが必要なんですが、どうもそこに問題があるようで。自分の場合、どう考えても入っているはずなのですが、何度やってもうまくいかず、結局、公式サイトにあるバイナリのパッケージを使ってインストールする、ということになりました。OSXやLinuxでは、普通にpipでNumpyをインストールできました。

Windowsでも、できればpipでNumpyをインストールしたくて粘ったのですが…。というのは、最近はWindowsでもパッケージ管理ソフトが出ていて、その名もChocolateyですが、これを使おうという野望がありました。これでPythonをインストールして、他はpipでインストールできれば、コマンドラインだけですべて完結して、スマートだなぁと思ったのです。が、色々面倒くさくて、結局諦めました。そしてPythonをChocolateyでインストールすると、Numpyをバイナリパッケージでインストールするときに、パスの設定とかがあって面倒臭かったので、Pythonも公式サイトのバイナリから入れることにしました。

Matplotlibの公式サイトのバイナリパッケージで失敗

これはNumpyとは逆で、公式サイトにあるMatplotlibのバイナリパッケージからインストールすると、これがインストールで失敗したのか、importで失敗したのか記憶が曖昧なのですが、うまくいきませんでした。恐らく、pipでインストールしたものの中で足りないものがあるのだと思います。なので、条件さえきちんと整えれば、公式サイトのパッケージからインストールして問題ないと思いますが、私の場合は、最終的にpipを使ったインストールに落ち着きました。まぁ、できればpipを使ったほうが管理の面からいってもいいですしね。

便利だけど苦労もあるクロスプラットフォーム

Pythonを使えばWindows、OSX、Linuxのいずれでも同じように動かせることができてたいへん便利なのですが、私の場合Python初心者にも関わらずあちこちのプラットフォームで同時に色々やったのが仇になったような気がします。しかし、勉強になりました。Python、とても便利ですね。最初C++で実装するつもりだったのですが、Pythonを選んで正解でした。Numpyを使えば、Pythonの利便性とC並の速さが手軽に実現できる…学生時代に経験したmalloc地獄を味合わずに済みました。

関連コンテンツ

関連記事

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。