完全初心者向け!pythonできることおすすめ4選【1年でできること公開します】

  • 2021年10月9日
  • 2021年10月10日
  • python
  • 128view
  • pythonって何ができるの?
  • pythonの向いている分野は?
  • pythonが人気の理由は?

みなさんはこんな疑問をもっていませんか?

2021年プログラミング言語ランキングで1位※1を獲得した『python』ですが、なぜそんなに人気なのか気になりますよね ※1 米オライリー(O’Reilly)発表

私も疑問に思っていましたが、やっていくうちに人気の理由がわかりました

そこで今回はpythonでできること・人気の理由を初心者の方にもわかるように解説していきます

この記事を読むとわかること・・・

  • pythonで向いていること・向いていないこと
  • python人気の理由
  • 1年でpythonのレベルどれくらいになるか(実績公開します)

こんにちは!おへんじといいます!

私は趣味でプログラミングを独学ではじめて1年の初心者プログラマーです

pythonをメインにhtml, css を少し勉強しています

pythonでFXの自動売買マシンを作ろう!と夢をみて日々格闘中です

他にも同じような内容が書いてある記事はたくさんあるけど

  • 初心者目線で書かれてない
  • 実際にどれくらいできるようになるかイメージが湧かない

と見てて思いました

初心者の悩みは初心者にしかわからない!

ということで、分かりやすさ重視で初心者の方向けに実体験をふまえて解説していきますので

みなさん一緒にがんばっていきましょう!

この記事では、実際に私が1年勉強してできるようになったことのみを紹介しています
 
 
おへんじ
1年勉強すれば、これくらいできるんだ!の参考にしてね

pythonで向いていること4選

pythonでできることはたくさんありますが、なかでもpythonで向いていることおすすめ4つをピックアップして紹介していきます

1つでもやってみたいことがあったら、ぜひ一緒にpython初めてみましょう!


その1 AIを使って予測できる

なんと言っても、AIを簡単に使えることがpython人気の最大の理由です

 
おへんじ
AIの仕組みがわからなくても使える機能がそろってるから初心者でも使えるよ

AIが簡単に使える理由

pythonには目的ごとに必要な機能をまとめたライブラリという便利なものがあります

ライブラリの中にはAIを使うためのライブラリ(keras, tensorflowなど)もあります

ライブラリのおかげでAIの仕組みがわからない初心者の方でもAIを使用できます

たった数行でAIを作成することができます(1から作ると数百行は必要です)

参考コードはこんな感じです

# ライブラリのインストール
from keras.models import Sequentialfrom keras.layers import Dense

# AIくんの作成
model = Sequential() 
model.add(Dense(units=64, activation='relu', input_dim=100)) 
model.add(Dense(units=10, activation='softmax'))

# お勉強方法の設定
model.compile(loss='categorical_crossentropy', optimizer='sgd', metrics=['accuracy'])

# お勉強の開始
model.fit(x_train, y_train, epochs=5, batch_size=32)

# AIくんで予測
classes = model.predict(x_test, batch_size=128)
おへんじ
コードをみてウワッと思ったかもしれないけどちょっと待ってね
  • AIの使い方の解説ページがあるのでコピペでAI作れます
おへんじ
AIも簡単につくれるんだ!と思ってくれればいいよ

今回記載しているコードの説明はこちらから(keras公式サイト)

AIの仕組み

AIを簡単に説明します(興味ない方・知ってるよ!って方は読み飛ばしちゃってください)

例えば、動物の画像を入力して、その動物が『かわいい』かを判定してくれるAIくんを作成するとします

完成イメージはこんな感じです

おへんじ
僕はかわいいからこのAIくんは頭いいね
見習くん
も、もちろんです笑

まず、AIくんが『かわいい』と判断するためには、『かわいい』とは何かを勉強してもらう必要があります

そこで、AIくんが勉強するためのデータを用意する必要があります

どんなデータを用意するかというと・・・

AIくんが勉強するには入力データ正解ラベルが必要です

  • 入力データ:動物の画像
  • 正解ラベル:画像が『かわいい』のか『かわいくない』かの情報

こんな感じの用意したデータをAIくんに渡してあげて『かわいい』とは何かを勉強してもらいます

上手に学習できると精度の高いAIくんが完成します

例では、動物が 『かわいい』か判定するAIくんを紹介しましたが、

入力データと正解ラベルを変えることでいろんなAIくんを作成することができます

例えば・・・

  • 自分がどの芸能人に似ているのかを判定するAIくん
  • チェスができるAIくん
  • 株価など予測するAIくん

ちなみにチェスではAIくんが強くなりすぎて人間では勝つことができなくなってます

pythonでは自分が作りたいAIくんを作ることができます

AIについて詳しく知りたい方は、近日中に解説記事を投稿予定なのでそちらを参考にしてみてください


その2 webからデータを自動で取得できる

pythonでは自分の欲しいデータをwebサイトから取得できます

取得方法はいろいろありますが

例えば・・・『APIによる情報取得』や『スクレイピング』と呼ばれる方法があります

おへんじ
スクレイピングなどを使えば画像データなども自動で取得できるよ
見習くん
今までコピペとスクショで取得してたのに
おへんじ
実際にどんなデータをwebから取得したか説明しておくね
FXの過去データを取得していました

FXとは・・・外国為替取引のこと

簡単に言うと、画像のような値動きを予測してお金の取引をすることです

おへんじ
こんな感じのデータがwebから簡単に取得できるよ

この他にもこんなことができます

  • 自分の好きな芸能人の画像だけを取得できる
  • オークションの価格が変動したら検知する
  • ライバル会社の情報を取得する
スクレイピングにはアクセス制限著作権に関するルールがあるのでルールを守って情報を取得しましょう

その3 業務の効率化ができる

普段の仕事でExcel, wordなどの定型的な作業はありませんか

pythonでは、そんな定型的な作業を自動化できます

自動化すると1時間の作業が、数秒に短縮できた!なんてことが結構あります

おへんじ
pythonではExcel, wordへアクセスするためのライブラリがあって自動化が簡単にできるよ

いくつか具体例をあげると・・・

  • メールを自動で作成して相手に送ってくれる
  • 請求書などの定期的に作成する書類を自動で作ってくれる
  • ネット上の天気情報をExcel, word等に書き写す(Webページの情報ならなんでもOK)

上の3つは実際に、私が自動化できた内容です

 
 
おへんじ
Excelの数式の進化版ってイメージでいいよ

その4 データの分析・解析など

pythonは大量のデータを使った分析や処理などが得意です

pythonがデータ解析を得意としている理由は・・・

  • 数値計算などを扱うライブラリが揃っている(numpy, pandas, scipyなど)
  • 行や列などエクセルを使うような感覚でプログラムができる(直感的にプログラムができる)
おへんじ
pythonは他の言語と比較してプログラムが書きやすいからミスも少なくなるよ
計算速度については、他の言語と比べて早い!というわけではありませんが
numpyなどのライブラリを使用すればかなり早くなります

私は実際に

pythonを使ってFXの過去データの分析をしていました

したことを簡単に説明すると・・・

  • FXの過去データからテクニカル指標を作成(AIくんへの入力データ用)
  • 過去データをグラフにして視覚的に確認する 
FXの過去データからテクニカル指標の作成
FXの過去データからグラフを作成
おへんじ
pythonで数十万のデータが数秒で処理できたりグラフなども作成できるよ

pythonで向いていないこと

これまで紹介したこと以外にもpythonでできることはいろいろありますが

ここから紹介する内容は、

  • pythonでもできるけど、pythonよりおすすめの言語がある内容です
  • アプリケーションの作成
  • ブロックチェーンの作成
  • ゲームの作成
  • webサイトの作成

1つずつ見ていきましょう!


アプリケーションの作成

アプリケーションなどの作成は、pythonでも作成できます

人によってはpythonでアプリケーションの作成をおすすめしている方もいます

プログラミングをしている方へ聞いたところ・・・

  • pythonでも作成は可能だけど、『pythonじゃなくてJavaScriptの方がおすすめ
  • JavaScriptの方が流行っていて、その辺の情報更新のスピード感が全く違う

これからプログラミングをはじめる予定で

webアプリケーションを作成したい!のであればJavaScriptがおすすめです


ブロックチェーンの作成

ブロックチェーンは難しいのでサラッと流します

おへんじ
ブロックチェーンを一言でまとめると『安全にデータを記録する技術』のことだよ

ビットコイン』でも使用されている最近注目されている技術です

最近話題のブロックチェーンもpythonで実装は可能ですが

こちらもプログラミングをしている方へ聞いたところ・・・

Node.js(サーバーサイドのJavaScript)での実装が最近流行っているからpythonでなくてもいいとのことでした


ゲームの作成

pythonでも以下のようなゲームは作成できます

  • クソゲーじゃんと思った方、正解ですクソゲーです笑

 
おへんじ
こんな感じのクソゲーならpythonで初心者でも簡単につくれるよ

ちなみにこれはpyxelっていうゲームを作成するためのツールだよ

しかし『モンハン』や『ポケモン』といった高度なゲームになってくると

pythonだとどうしても『処理速度が落ちてしまう』ため高度なゲームを作成したい!

という方にはpythonはおすすめできません


webサイトの作成・デザイン

pythonでは、webデザインが残念ながら実装できません
webデザインやwebサイトを作成したい場合は、『html言語』や『css言語』などがおすすめです

python が人気の理由

ここまでpythonでできることを紹介してきましたが

pythonが人気の理由をまとめておきます

その1 インタプリタ言語のため確認作業が早い

pythonはインタプリタ言語なので、確認や修正が簡単です(コンパイル不要)
おへんじ
急に何言ってんだ!と言われそうなので日本語で説明しておくね
  • コンパイル:人間語を機械語に翻訳すること
  • インタプリタ言語:1行ずつ人間語を機械語へ翻訳する言語
  • コンパイラ言語:一気に人間語を機械語へ翻訳する言語

プログラムを書くのは人間だから『人間語

プログラムを実行するのはパソコンだから『機械語

よってプログラムを実行するときには『人間語』を『機械語』へ翻訳をする必要があります

インタプリタ言語とコンパイラ言語は翻訳の仕方に違いがあります

コンパイラ言語は、1部分を修正しても全てを翻訳しないと確認作業ができないのに対して

インタプリタ言語は、1行ずつ翻訳するため、その箇所だけの確認作業が早くできます

おへんじ
まとめるとpythonはインタプリタ言語だから『確認・修正作業が早くできる!』ってことだよ

その2 プログラミングが簡単に書ける

おへんじ
プログラミングって長ーーーい英語をひたすら書きまくるイメージがあるよね
見習くん
呪文にしかみえません泣
おへんじ
pythonも英語を書くけど、他の言語に比べてシンプルな構造になってるよ
見習くん
初心者が納得できる説明をお願いします!
おへんじ
他の言語と比較しながら説明するね

例えば『hello world』という文字を出力するプログラムを『python』と『C++』で書いてみます

ちなみに『C++』はプログラミング言語の1つです

〈c++〉

#include <iostream>

int main() { std::cout << "hello, world" << std::endl; return 0; }

〈python〉

print("hello world")

これだけでもpythonが簡単そうだなーって思いませんか?

このようにpythonは他の言語に比べてコードがわかりやすい言語です

おへんじ
ちなみにプログラミングの説明では、よく『hello world』が使われるよ

その3 できることがたくさんある

上でも紹介しましたが

pythonでは他の言語に比べてできることが幅広く1つの言語を覚えるだけで

様々なことができます

おへんじ
初心者でやりたいことが決まってない人はとりあえずpythonを勉強するのもおすすめだよ

まとめ

pythonに向いていること

  • AIで予測ができる
  • webからデータを自動で取得できる
  • 業務の効率化ができる
  • データ分析・解析ができる

pythonに向いていないこと

  • アプリケーションの作成
  • ブロックチェーンの作成
  • ゲームの作成
  • webサイトの作成・デザイン

python人気の理由

  • インタプリタ言語のため確認・修正が早い
  • プログラミングが簡単
  • できることがたくさんある

pythonはできることが幅広く初心者にもわかりやすい作りになっています

pythonができると副業で稼ぐことも可能です

pythonを独学で勉強しようかなーって思っている方への記事を今後書いていきますので

参考にして一緒にプログラミング頑張っていきましょう!

ohenziblogはプログラミングを独学で始めるための徹底ガイドを目指しています

最新情報をチェックしよう!