Pythonの特徴とできること
2019年12月23日
プログラミングを学ぶ上で最初に迷うのがどの言語を学ぶかですが、今話題の機械学習に挑戦したいという方にオススメなのがPythonです。
Pythonとは?
Pythonはプログラミングの人気ランキングでも常に上位を占める大注目の言語です。
機械学習にとどまらずWebアプリケーションの作成や組み込み開発など様々なものを作ることができます。
Pythonの特徴
Pythonはオブジェクト指向のスクリプト言語
Pythonはオブジェクト指向のスクリプト言語です。
実行のために機械語に翻訳する必要のあるコンパイラ言語と違い、書いたコードをそのまま実行できるのでさくさくコードの実行ができるので、手軽にプログラミングを始められます。
読みやすい
Pythonは「誰が書いても同じようなコードになる」という思想のもとで設計されており、とても読みやすいです。
文法はシンプルで各処理はインデント(字下げ)で一つのブロックとして区別できる文法が特徴的です。
例えば0から9までの数字を表示する処理を書く場合はこんな感じです。
C言語
<pre>for (i=0; i < 10; i++) {
printf(“%d¥n”, i);
}
//こう書いても間違いではない。
for(i=0;i<10;i++){printf(“%d¥n”, i);
</pre>
Python
<pre>for i in range(10):
print(i)
</pre>
C言語やJavaはすべての処理を1行で書いてもエラーにはなりませんが、とても読みづらいです。
一人でプログラミングをしているとわかりづらいですが、チームで働く際、他の人のコードを読む機会も多いので、コードの読みやすさは開発速度にも関わってくる大事な要素です。
書きやすい
読みやすさと少しかぶりますが、文法がシンプルなので初心者でも簡単に覚えることができます。
また、コードを直感的に書けるのでPythonでのプログラミングはとても楽しいです。
機械学習に強い
今大変話題になっている最先端の技術と言えばAIです。
基本的に機械というのは人間が指示したことを指示通りに行うモノで「知らないこと」には対応できません。
しかし、AIは膨大なデータを解析することによって、人間に指示されていない「知らないこと」にも対処できる未来の技術です。
AIを形作っている機械学習の分野で最も使われている言語はPythonなのです。
Pythonでできること
webサービスの作成
PythonにはDjangoやFlaskというwebサービス構築用のフレームワークがあります。
これらのフレームワークを使えばデータベースと連動して「登録・削除・修正」を行えるwebサイトを作ることができます。
機械学習
Pythonが機械学習に最適なフレームワークが豊富にそろっているため機械学習に強いです。
機械学習を勉強する=Pythonを勉強するといっても過言ではありません。
機械学習を応用すれば、自然言語(日本語や英語など人間の言葉)を分析して、お客様対応するチャットボットや、株式市場の傾向を分析して自動で株の売買をするシステムなどを作ることができます。
スクレイピング
スクレイピングとはネット上から直接情報を取得する手法です。
機械学習に必要な大量の情報だったり、webサービスを作る上で他サイトからの最新情報を常に必要とする場合に使います。
Pythonではスクレイピングを自動で行うシステムが簡単に作れます。
Pythonができないこと
Pythonは汎用性が高く、苦手とする分野は少ないです。
強いてあげれば、スマホアプリならSwiftやJavaの方が適していますし、ゲーム開発もC++やC#の方が一般的ですので、わざわざPythonが使われることはありません。
まとめ
Pythonは機械学習やwebサービスの開発に用いられる大人気のプログラミング言語。
直感的に書けて読みやすいのが利点です。
最先端の技術・AIに携わってみたいという方は是非Pythonを勉強してみましょう。