読者です 読者をやめる 読者になる 読者になる

$ service ssh0 start

from everything import *

僕がPythonを選んだわけ

以前に宣言したとおり,Pythonについてまとめてみたいと思います.ここ数カ月しか使っていないド素人なので,本物のPythonistaからはお叱りを受けるかもしれませんが,初心者なりの目線で,いろいろな人に魅力を知ってもらいたいと思います.

93917.png

まず,Pythonとは?

プログラミング言語の一つです.スクリプト言語に属するとも言われますが,それ以外のコアな部分もコードできるようで,とにかく何でも器用にできてしまう言語です.苦手な分野は,,,何でしょう?よく知りません.詳しくは Wikipedia-Pythonを参照してください.

ちなみに下のリンクからPython擬人化のキャラクターを見ることができます.説明書きがよく出来ていて,勉強になりました.

Java、C++、Python…プログラミング言語擬人化計画!|【Tech総研】:

詳しいお話などは,僕にはできないので,ここでは,なぜPythonを選んだのか,その経緯についてお話して,どういう面で初心者向きなのか,といったことをお伝えできればと思います.

なぜPythonか?

これまでの僕のプログラミング経験は,C言語Matlabスクリプトを書いたこと,そしてシェルスクリプトを少しいじった程度でした.つまり,いわゆる高級言語を使ってプログラムを書いた経験は,ゼロです

ではなぜPythonを始めるに至ったか.まずはシェルスクリプトをいじっていて,どうすればいいかいろいろ検索しているとき,より高度な処理をするためには外部からPythonなりRubyなりPHPなりを呼び出して使用する場合が多いことに気づきました.

もちろん,awksedなどを駆使して,いろいろやっている方も多いのですが,面倒な処理はすべて他の言語にお任せして,記述をシンプルにしている人が多い印象でした.しかもそのコードは見たところすごく簡単そう!というわけで,スクリプト言語に手をつけようと思い始めました.その中で一番パッと見で理解しやく,とっつきやすかったのがPythonというわけです.

実際,Pythonの開発コンセプト自体が,シンプルで有ればある程よい,というものなので(The Zen of Python),組み込みの関数が膨大ということもなく,またオブジェクト指向の恩恵として,様々なタイプの変数が,同じ関数によって似たような操作を実現できるという意味でも,直感的です.一度覚えた関数は,他の変数にも適用できることが多く,いちいち調べる作業が少なくなり,そのことも学習曲線の立ち上がりが早いことを実感出来ました.

今,新たにプログラムを始めようとしている人が,何から始めようか,という時に,基本を大事にするためにはやはりまずCでしょう.しかしCは習得するのに時間がかかり,それまでにやりたいことがうまくできないと,モチベーションが下がって,習得が難しくなります.その点でPythonは標準でライブラリが豊富に揃っているので,少し勉強するだけで様々なことが実際に試せるようになり,特にGUIなどの扱いも楽なので,モチベーションが維持されやすいです(←これは僕だけでしょうか?笑).

また,PythonはReferenceが充実しています.わかりやすく書かれた(しかも日本語!)使用例まで挙げられた説明書が,ネット上にアップされ,いつでも無料で見ることができるのです.

概要 — Python 2.7ja1 documentation:

概要 — Python 3.4.1 ドキュメント:

ちなみに今Pythonは欧米でかなり熱いです.アメリカのプログラムの入門コースではPythonが人気,という以下のような記事もでました.

Pythonが大学の入門用プログラミング言語として人気を集めていると判明 - GIGAZINE:

これからは,大学のカリキュラムでもPythonを教えてくれるかもですね!

まとめ

お話はこれくらいにして,結局僕がPythonを選んだのは

・ 簡単そう

・ 便利そう

・ Zen of Python イイね!

の理由によります.

Pythonの導入については,正直Ubuntuでは最初から入っているため,特に調べたこともなかったんですよね.

Windowsの方向けの参考になりそうなリンクを貼っておきます.

Windows で Python を使う - Python 入門:

ちなみにMacにもPythonはデフォルトで入っています.ただ,確かバージョンが最新ではないはずです(2.x系でも最新でない).最新のPythonを使いたい方は

MacOSX - Mac OSX で開発環境を構築するための環境構築 (Homebrew, Git, SVN, Ruby, Perl, Python) - Qiita:

などが参考になるかもしれません.

実際に使ってみた,というのは次の記事で.