個人的に考える「Pythonのここが素敵!」ポイント

2017.12.22

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、みかみです。

 

業務で Python をメインで使うようになってから1年経ちました。

すごく使いやすいと思ってます。

最近では確認作業に必要なちょっとしたデータの加工とか、Python 使ってやってます。

Python に限らずな点も多々ありですが、改めて、個人的に「Python のここが素敵!」と思うポイントを考えてみました。

1. 簡単に書ける

言わずもがな、LL言語(Lightweight Language)である Python。

シンプルに書けるし、コード量も少ないし。

 

インデント合わせないとエラーになったり、どこからどこまでが1つの関数なのかわかりにくかったりで({} で囲まれてたりしないので。。

最初は少し戸惑いもありましたが、文法は他の言語とほぼ同じなので、とっつきやすかったです。

リスト内包表記やlambda式も、慣れてみると、他の言語書いててもついつい使いたくなります。(1stepで書けるので。

2. 簡単に動かせる

対話モードで実行できるので、例えば

「このシステム関数で取れるのどんなフォーマットだっけ?」

とか、

「これ実行したらフルパスとれたっけ?それともファイル名だけだっけ?」

な時に、簡単に確認できます。

 

また、Jupyter notebook を使えば、

コーディング→実行→可視化→共有

も簡単にできます。

ファイルにコード書いて、コンソールからファイル指定して実行より速いので、個人的には Jupyter notebook よく使ってます。

3. 環境構築がらくちん

Python 2系と3系で、文法などにもけっこう差分があるようで。。

pyenv 使えば1つのマシンに複数環境のインストールも、使用環境の切り替えも簡単にできます。

 

また、ライブラリなどのインストールが必要になった場合、コンソールからコマンド打つだけでOKな pip インストールも、

インストーラー探して、ダウンロードして、実行して・・・(またはダウンロードしたライブラリを別ディレクトリに移動して・・・

な手間と比較すると非常に便利です。

新しいプロジェクトが始まるときなどの環境構築、けっこう時間かかるイメージ持ってましたが、Python だったらハードル低そうv

4. ライブラリもたくさん

Python と言えば「データ分析」なイメージでした。

NumPy、Pandas、scikit-learn。さすがです!

 

データ分析分野に限らなくとも、HTTP通信できる requests や JSON を簡単に扱える simplejson、そしてAWSアクセス時に使用する boto など、ライブラリが豊富です。

有名どころではなくても、用途に合ったもの何かないか、Webで探すとたくさんのライブラリが見つかります。(ドキュメントが英語しかなかったり、Open Issueがあったりなのは難点ですが。。

 

もし「ライブラリなしで自分でコード書け!」だったら、気が遠くなります。。

便利なものは使うにかぎりますし、使えるものは多い方がうれしいですv

5. ネーミング

Python! Anaconda!!

由来は生き物じゃないとしても、なんとなくヘビなイメージ(かっこいいv

 

ついでに見てた各OSSの名前の由来がけっこうおもしろかったです。

個人的に、いいなwとおもったのが、Namazu と Google V8w

そしてやはり、MySQL(からの、MariaDB><v

おわりに

自分C言語出身なので、たまにmalloc/free自分で書きたい。。と思うこともあります。。。

最近、コンパイルオプション(#ifdef)使えればなー。。と思ったこともありました。。。

 

もちろん、LL言語の方が優れてるとは思ってません。

でも、LL言語の方が効率的?と思うのです。

なので、今一番好きな言語、Python です。

 

Pythonist 目指して、今後も Python 使っていこうと思ってます。