- 更新日: 2018年10月30日
- 公開日: 2018年10月29日
【Python入門】Pythonとは
現在、人工知能やプログラミング教育が注目され、プログラミング関係者以外でも Python という言葉を目にするように。
今回はプログラミング未経験者向けに、「Python」ご紹介させて頂きます。
【Python入門】今注目されているPythonとは一体?
Pythonとは
- Pythonはプログラミング言語の一種
- 人工知能の中のことが分かるようになる言語
- 小学生から学べる言語
- Macのパソコンと Linux のシステム内で使われている信頼されているプログラミング言語
- 仕事以外にプライベートでも役立つ言語
- アナログの世界とも融和可能な言語
- 学習初期は比較的やさしいプログラミング言語
- ワクワクするプログラミング言語
すごく簡単に「Pythonとは」を記述しました。ニュースや新聞をみて「人工知能」に不安を感じたことがある方は、一度 Python やってみるとその不安から開放されるかもしれませんよ。 もっと詳しく Python を知りたい方は、公式ドキュメントを一度覗いてみて下さい。
Pythonを試す
あなたは Python に興味をお持ちでしょうか?そうであれば 百聞は一見にしかず 、まずは下の ▶ ボタンを押してプログラムを実行してみて下さい。
実行結果は、1から 5までを 1ずつ足す結果。プログラミングの基本機能「ループ(繰り返し)」が使われていますね。
最終行の i += 1
を i += 0.5
に変更すると 0.5ずつ加算。いろいろ試してみて下さい。
また Python の場合は上記のようなコードですが、他の言語 PHP や Java の場合はどうでしょうか? Python をはじめるか、他の言語を学ぶべきか、悩んでいる方の参考になればと思います。
PyhtonとPHPとJavaを比較
先ほど行った Pyhton のループ処理は以下のコード。
-- Python --
i = 1
while i < 6:
print("No." + str(i))
i += 1
-- PHP の場合 --
<?php
$x = 1;
while($x <= 5) {
echo "No. $x \n";
$x++;
}
?>
-- Java の場合 --
public class Main {
public static void main(String args[]) {
int n = 1, times = 5;
while (n <= times) {
System.out.println("No." + n);
n++;
}
}
}
どれも同じ結果になるループ処理ですが、プログラミング言語によって書き方が違いますね。読みやすさでいうと記号の少ない Python がいいのではないでしょうか?
こうした高い可読性から、海外では小・中学校で Python を学習する方もいます。
< オンラインで Python を試す Link >
< オンラインで PHP を試す Link >
< オンラインで Java を試す Link >
オンラインでも Python や PHP 、 Java などのプログラミング言語を実行することができますが、いろいろ制約が。学習を始めるならそれぞれの言語にあったパソコン環境を構築することをオススメします。
本格的なプログラム処理も直ぐにできる
人工知能や予測値の計算、一つ一つの処理過程を理解し、プログラム処理させるのは一苦労。しかし、Pythonを使えば既存の予測モデルを利用して、難しい計算のことのことが分かっていなくても「予測」できます。
以下に Jリーグの試合結果を予測するプログラムを実行してみますね。
川崎 対 鳥栖の結果、川崎が 55% の確率で勝つということに。。。
参考ページ:dashee87.github.io
この他にも Python でできることはたくさんありますので、以下にご紹介。
Pythonでできること
自動運転するラジコンの動画
- きゅうりの自動仕分け
- 畑の土壌管理
- 自動運転(ラジコン)
- カメラの遠隔操作
- ゲームの自動化(最適化)
- ロボット開発
- ゲーム開発
- モバイルアプリの開発
- デスクトップアプリの開発
- Webサービスの開発
- データ収集(スクレイピング)
- データ分析
- テキストの自動作成
- データの自動追加
- 健康管理器具の開発(with Raspberry Pi)
- 数学の演算
- 人工知能の開発
などなど
こうしてみると畑や農業といった従来アナログ的な分野でも Python が使われています。今までは人の「目」や「勘」「経験」に頼っていた農業もデータによって制御でき、重労働から開放されるかもしれないという期待がありますね。
そしてそうしたデータを Web や スマホ、パソコンともシームレスに接続できのが Python。今までなかったサービスを作れる可能性がある、ということですね。
こうしたアナログとデジタルのコネクションには、 C や C++、 Java がよく使われていますが Python はそれらの言語に比べると比較的低学習コスト。そして開発に必要な器具も個人で手に入りますので、気軽に開発を楽しめる特徴があります。
Pythonの需要
こちらでは転職やフリーランスとして Python スキルを習得しようと考えている方向けに、参考となるデータを集めてみました。
-- Python エンジニアの求人件数 --
2018年9月15日時点 | 2018年4月時点 | 増加率 | |
---|---|---|---|
indeed | 9401 | 8843 | + 6% |
リクナビNEXT | 102 | 71 | + 44%ほど |
DODA | 674 | 383 | + 76%ほど |
-- Python の案件数 --
クラウドワークス | 49 |
ランサーズ | 8 |
Upwork | 1,537 |
就職・転職については、明らかに Python エンジニアの需要は増しています。フリーランスの案件については、海外の Upwork が先行している形で国内ではまだまだといったところ。恐らく今後「Pythonでこんなことやあんなことができる、しかし自分では構築できない」となった時にフリーランス市場でも Python スキルホルダーの人に需要が湧くと考えられますね。
Pythonを使えるようになるためには
- パソコン
- ネットワーク
- テキスト
- 時間の確保
パソコンについて
Python自体は無料で提供されていますが、Python実行時、どうしてもコマンドプロンプトもしくはターミナルを起動する必要がでてきます。Windows の場合は見難いコマンド画面ですが、 Linux 系の Ubuntu などにするとカラフルなコマンド画面で操作しやすいです。将来的に VPS などサーバー周りも触っていこうと考えている方は、Linux 系で Python することをオススメします。
テキストについて
手っ取り早く安くネット教材で学習しようとされていますか?個人的には、参考書もしくはスクールからの本を使用することをオススメします。理由は、Python2 と Python3 がウェブ上では混ざって情報整理しにくいからです。またバージョン誤差によってサンプルコードが動かなかったりなどもありますので、一貫して学習できる参考書もしくはスクールの本をオススメしますね。
時間の確保について
Pythonの基礎学習を終えるのにかかる時間は個人差あると思いますが、社会人の方なら 2ヶ月程度は時間が必要と思います。読んで、試して、理解して、そしてまた試して、エラーが出て、直して、と Python を自分のものにしようと思うと 1ヶ月ではムリでしょう。また Django など Webアプリの公開を目指している場合は、その 2倍は時間がかかるのではないでしょうか? WordPress とは比べものにならないぐらい時間はかかります。しかし、その分 Python でできることは多いはず。
Python の独学に役立つサイト
-- Web サイト --
- PyQ(月2,980円〜、日本語)
- W3Schools Pythonコース(無料、英語)
- Digital Ocean(無料、英語)
- Dan Bader (無料、英語)
-- YouTube --
- Siraj Ravalさん(英語、 Mac)
- Max Goodridgeさん(英語、 Mac)
- ProgrammingKnowledgeさん(英語、Windows)
Webで Python 学習をする時は、英語や中国語、日本語など気にせず、とにかくコード基準で判断することをオススメします。参考書とは違ったコードの書き方をしたりして、いろいろ発見もあると思いますよ。
Python を学習できるプログラミングスクール
ちょっと独学では難しそうな方、不安な方、プログラミングスクールが参考になると思いますよ。
スクール | 参考コース | 料金 | 学習時間 | 受講方法 |
Winスクール | Pythonプログラミング | 154,000円 | 受講 35時間(期間 4か月) | 通学 |
TechAcademy | Pythonコース | 139,000円 | 自習 20〜40時間(期間 1か月) | オンライン |
CodeCamp | Pythonデータサイエンスコース | 148,000円 | レッスン 13.3時間(期間 2か月) | オンライン |
上記料金税抜き
\AIエンジニアに必要なスキルが身に付く/
まとめ
この記事を書いている最中にも「NHKスペシャル 人工知能 天使か悪魔か 2018未来がわかる その時あなたは?」と題して人工知能の特徴が放映されていました。その中で「人工知能はブラックボックス」と説明する場面も。そのために人工知能の言いなりになり、不幸になる人間も発生。この時あなたが人工知能のプログラムを少しでも知っていれば、その算出プログラムが本当に正しいのかどうか、疑いを持つこともできます。しかし、プログラムが分からなかったら、従うしかないのかもしれません。これは LGBT や障害者に関する問題と同じで、知識不足によって生み出される弊害のようにも思えます。
この直近の脅威ともいえる 人工知能 を早く理解するには、 Python が欠かせないのではないでしょうか。スマホをスクロール × スクロールする時間があるなら、1回でも多く Python を動かしたり、GitHub 上で公開されている Python プログラムを見ることをオススメします。
「えっ、Python 早くしたい」CodeCamp の オンライン × マンツーマン いかがでしょうか?
- この記事を書いた人
- オシママサラ