株式会社ユーユー|次代を担うシステム・イノベーター

Pythonについて、個人的な感想

いま、開発言語といえば、Pythonだよね。というかPythonしか選択肢ないんじゃないかな。ないよね。

Pythonをしばらく使ってみての、個人的な感想。

  1. 最初は、強制インデントが不思議な気がするけど、すぐ慣れる。C言語やJavaとかでも、インデント間違ってソース書いたりしないよね。インデントが間違ってたら、単なる書き間違いなのか、バグじゃないのか、調べる必要があることになる。それを、Pythonの場合には、コンパイラがチェックしてくれると思えばいい。いまでは、ほかの言語にインデントチェック機能がないのが、不便だと感じている。
  2. オブジェクト指向じゃない感じでも書けるので、クラスを作らないで書き始める。それが、だんだん大きくなってきて、あとで、「この部分はクラスにしないとね」と気づいてオブジェクト指向的に設計しなおして、クラスに書き直しになることが多い。個人的には、たいていの場合にそうなる。
  3. Javaの場合、ファイル名とクラス名を同じにするというしばりがある。ファイル名ばかりではなく、ディレクトリ構造をパッケージと一致させる必要がある。これに慣れていると、Pythonのクラス名に関係なくファイル名を決めていいのは、不安な気がする。Pythonが普通で、Javaのようなしばりがあるのが特殊なんだけどね。
  4. 実行速度は、Pythonがスクリプト言語なので大したことはないはずだが、自分の用途には全く問題ない。いま作っているのは、ファイルを読み込んで、少し加工して書き出す、というもので、ファイルの大きさも1Mbytes程度までなので、もともと速度が問題になるようなことはないはず。だいたい2,3秒ぐらいであっという間に終わる。
  5. 速度が問題になるようなプログラムの場合には、CythonとかNumbaとか、ちょっと書き直す必要はあるけど、速度向上のための方法が用意されている。
  6. Deep Learningとか、画像処理などの用途の場合、速度が問題になる部分は、Pythonから呼び出されるライブラリ(たいていC言語で作ってある)が処理する。データ処理にはPandas(とNumpy)がある。
  7. Version 3.xへの移行には、手間取った印象があるけど、もうVersion 2.xのことは、気にしなくてもいいよね。

つぎは、Pythonのインストールについて書く予定。