もしかして その1:コルトパイソン
もしかして その2:モンティ・パイソン
概要
Pythonとは、オブジェクト指向スクリプト言語の一つ。オランダ人のGuido van Rossumが開発した。3DCGソフトのblenderのスクリプトとして有名である。
ともにオブジェクト指向スクリプト言語であるという点から、Rubyとよく比較される。汎用性はスクリプト言語で最も高いといわれ、特に演算や計算等のデータ系に強い。
そのために、AI技術に最適な言語とよく喧伝されている。
弱点があるとすれば、Webサイトに適したフレームワークが枯れた技術のまま普及しているDjangoと、あとはエイプリルフールから誕生したFlaskぐらいしかないところか。ちなみにRuby on RailsとDjangoの普及率は世界で10:1ぐらいの開きがある。
由来
公式ホームページにスパムを使っていることやサードパーティプログラム配布サイトを「チーズショップ」と呼称していた事等から、モンティ・パイソンに由来していると考えられる。
オフサイドルール
Pythonの大きな特徴の一つに、「インデントで構造を表現する」というのがある(これをオフサイドルールと呼ぶ)。例えばC言語ではカーリーブラケット(「{」~「}」。実際は半角)で構造を表現するが、字下げに気を使わないと実際の構造と見た目が一致せずバグの原因になりやすい。Pythonでは字下げと構造が必ず一致するため、そのような齟齬が起きにくい。
Version2とVersion3
現在Pythonにはバージョン2(この系列の最終版は2.7である)とバージョン3(2013年1月現在の最新安定版は3.3)があるが、バージョン3はバージョン2の上位互換ではない。しかし、頑張ればVer2とVer3の両方で動作するスクリプトも書けなくはない。
教育用言語として
Pythonは可読性が比較的高く、静的で型に厳格なC言語やJavaと比較すると習得しやすい、という事で教育用言語として学ばれる機会も増えている。ただし、Pythonは国際標準規格となっていないので突然仕様が変更される事があり得る、という問題はある。
高校の情報Iの教科書にも採用されているが、文部科学省の教員向け指導書に掲載されたサンプルコードは杜撰な内容であったりする。
また、基本情報技術者試験の選択言語にCOBOLが廃止され、Pythonが導入された。