2014/05/24

[プログラミング]Pythonの環境を整えた。

,
 Pythonを始めることにしました。なので、環境を整えました。ですが、32bit/64bitの非互換性のためか、チュートリアルサイト通りには進まず、何箇所かハマってしまいました。なので、詰まったところのメモとして、この記事を書きました。


pipのインストール方法について


 Pythonには、モジュールと呼ばれるライブラリ群が沢山あります。私達は、これらの恩恵によって、すぐにプログラムを書いて、したいことを実行できるわけですね。

 ところで、ライブラリと聞くと、その管理方法をどうするかが疑問になります。例えばVC++だと、NuGetなるものがありました。これはコマンド一つでプロジェクトに導入できたり、自動でいろいろやってくれるので、あまり管理方法に悩まずに済むいいツールです。
 で、「Pythonではライブラリ管理は何を使えばいいんだー」と調べた所、「pip」なるものを見つけました。なので、とりあえずはこれを入れてみることにしました。

 pipのインストール方法ですが、Googleで検索すると「easy_installで入れるべき」だと書いてあるページが沢山出てきます。しかし、この方法はちょっと古いみたいです。私が参考にした以下のサイトのように、今はPythonがインストールしてあれば、get_pip.pyを実行することでpipを導入できるようです。

pipの使い方 (2014/1バージョン) — そこはかとなく書くよん。


Pythonがインストールされているのに、モジュールのインストーラーがそれを認識しない。


 PyAudioというモジュールをインストーラーでインストールしていたときに、「Python version 2.7 is required, which was not found in the registry」というエラーが出てしまい、数日間ここで悩んでました(投げた、ともいう)。

 この解決策なのですが、レジストリを64bit版の設定にすることらしいです。以下のサイトに記された通りにレジストリを書き換えたら、正常に認識されるようになりました。
Yamada Program: Pythonのsetuptools を 64bitマシンにインストール


pipからだと、64bit版のモジュールを入れられない?


 以下のサイトで、非公式に64bit版のモジュールを配布しているようです。ここからダウンロードしてインストールします。
Python Extension Packages for Windows - Christoph Gohlke

参考 :
64bitのWindowsでPythonの環境づくり - 唯物是真
windows7 64bit環境でのpython, opencvセットアップ等 - kohta blog


ライブラリ同士の依存関係が複雑


 最初、scipy、numpyをpipで入れようとしていましたが、インストール時にエラーが出てしまっていました。メッセージを見ると、どうやら何かモジュールが足りないようでした(今考えると、32bit版を入れようとしていたのが原因の気もします)。
 インストーラー(GUI)によるインストールなら、依存先のライブラリも一緒に入れてくれるのでしょうか?この事に関しては、私はあまり理解していません…。
 とりあえず、以下のものを先に入れていました。(他サイトではgfortranを入れるべきだと書いているのですが、自分は入れませんでした。)

 nose、pyparsing、python-dateutil


ブログを書いてみて


 Pythonとは関係無い、おまけの話です。
 モジュールの導入は、この週の頭くらいから詰まっていた問題でした。そして、だいたい木曜日くらいに、これらの解決策が見つかり、やっと不自由なく動作する環境が手に入りました。
 それで、この記事を書いているのは土曜日なのですが、もう何があったのか記憶が薄れてきているみたいです。特にエラーメッセージなどはそうで、ちゃんとメモしておかないと「どんなエラーだったのか」すらあやふやになってしまいます。そもそも、大体詰まった時はエラーメッセージをそのまま検索してみたりします。なので、

・エラーメッセージは、どこかに記録しておく。(出来ればスクリーンショットも撮る)
・解決策を見つけたら、そのURLや書籍の出典も、後で分かるようにメモを取る

これらの事は最低限しておくべきだなあと思いました。


 それから、他のブログページと比べると、大抵「自分の書いた文章は長くて読みにくいなあ」と思ってしまいます。「必要な情報を、簡潔に、分かりやすくまとめておく」方が、見やすいし理解の助けにもなるということは知っているのですが、実践するのはなかなか難しいです…。冗長的になってしまうのは、癖なのかもしれません。直したいところです。

0 コメント to “[プログラミング]Pythonの環境を整えた。”

コメントを投稿