※こちらの記事は、プロスタ編集部が現在大変人気の高いPythonの文法記事を公開することで、皆様の学習にお役に立ちたい意図で投稿しております。
参考サイト:プログラミング初心者がPythonを始めるべき3つの理由
プログラミング言語と一口に言ってもたくさんあり、これからプログラミングを始めようとしている方は「どれを選べばいいだろう」と悩むかと思います。プログラミング初心者の方には「Google三大言語」(C++、Java、Python)の一つであり、その中で唯一のスクリプト言語である「Python」という言語をオススメします。
##Pythonってどんな言語?
Pythonの歴史は古く、メジャーなスクリプト言語であるPerl、Python、Ruby、PHPの中では2番目に古い言語となります。また、JavaやC#よりも年上です。日本では少しマイナーですが、海外ではオブジェクト指向のスクリプト言語として人気です。
##Pythonはどんなところで使われている?
Pythonは様々な企業で利用されています。Googleの最初のウェブクローラーはPythonで書かれ、広告管理の自動化システムの構築や社内の様々な業務にPythonが使われています。Youtubeのシステムの多くは、Pythonで書かれています。他にも、NASAやMicrosoftなど多数の企業で使用されています。DropboxやTorrentなど、誰もが知る有名なソフトウェアがPythonで書かれてたりと、様々な実績がある言語です。
##近年話題の「機械学習」にもPythonがオススメ
最近では、「機械学習」「AI」「ビッグデータ」というキーワードをよく耳にするかと思います。求人でも「データサイエンティスト」や「機械学習エンジニア」といったものを見るようになりました。機械学習や高度な数値計算のライブラリが豊富にあるため、この分野ではPythonが一歩抜きん出ています。2016年度のプログラミング言語別の年収ランキングでは見事1位になりました。
##Pythonを選ぶべき理由
では、なぜプログラミング初心者にPythonがオススメなのでしょうか。今回はその理由を3つに分けてお伝えいたします。
###生産性が高い
例えば、Pythonでは1から10まで順番に表示するプログラムは以下のように記述します。
for index in range(1, 11):
print(index)
ファイルから1行づつ読み取り、それを表示するプログラムは以下のようになります。
for line in open("myfile.txt", "r"):
print(line)
このように、とても簡単に書くことが可能です。何かを作りながらプログラミングを学ぶならば、短いコードと時間でどんどん次の技術を習得できます。
###汎用的に使える
Pythonは汎用的な言語です。これが何を意味するかと言うと、PythonだけでウェブサイトやGUI*、複雑な科学計算やゲーム、ロボット向けのアプリケーションまで作成することができます。もちろん、ゲームにはゲームを作るための知識・技術が必要ですし、ウェブサイトを作るには専用の知識・技術が必要になります。ですが、作りたいものに応じてプログラミング言語も習得しなおすのは学習コストの面で大変です。趣味でプログラミングを行いたいけれど、作りたいものや興味が多すぎる!という方には正に最適な言語といえます。
- exe等を押すと出てくる、画面つきのアプリケーションのこと。
###可読性(読みやすさ)が高い
Pythonは読みやすさを非常に重視した言語で、「実行可能な擬似コード」と呼ばれることがあります。特に記号を極力使わないように設計されており、他言語ではよく使う$(ドルマーク)やブロックの範囲を示す中括弧・endといった記述は不要ですし、if文での条件を記入する際の括弧ですら不要です。先ほどサンプルコードを二つ書きましたが、「1から10まで順番に表示する例」と「ファイルから一行づつ読み込み表示する例」というまったく別の処理であるにもかかわらず、書き方がほとんど同じになっています。これは言語の機能に一貫性を持つよう設計されているためで、慣れてくると「こうすれば、こういう処理ができそう」というように直感的にコードが書けます。
コードが読みやすいということは、人のコードを読んで簡単に理解ができるということになり、修正や拡張、自分のプログラムに組み込むといった作業がすぐに終わります。また、読みやすいことで処理内容がわかりやすく、最適なアルゴリズムや無駄な処理などの発見も容易です。
##Pythonの欠点とは
Pythonは素晴らしい言語ではありますが、欠点が2つあります。
###実行速度が遅い
他の言語に比べると、実行速度が遅めです。近年ではPCスペックの向上や言語自体の改善によって、実行速度が気になるケースは少ないのですが、どうしても処理速度を重視したい場合もあります。実行速度を改善するための方法は豊富にあるのですが、それらは言語にある程度習熟しないと難しく感じるのも事実です。
###他言語に比べて日本語情報が少なめ
日本においては、Pythonはまだマイナーな扱いをされています。書籍やインターネットの日本語情報も多いとは言えません。しかし、最近になりそれらも少し増えてはきたので、悲観するほどではありません。