- 更新日: 2022年09月13日
- 公開日: 2017年11月24日
最近話題の言語【Python】でできる15のこと(2022年版)
プログラミング言語の中でもトップレベルで使用されている Python。書店や新聞でも目にする機会が増えてきたけど、 Python で何ができるんだろう?と思われている方も多いと思います。
今回は実際に社会でも活用されいる例をメインに Python でできることをお伝えしていきますね。
<< Python できることリスト >>
- 分別の自動化
- ルート最適化の自動化
- 自動応答
- 支払いの自動化
- データ収集の自動化
- データ記録の自動化
- 株の自動売買
- 仮想通貨の自動売買
- 支払いの自動化
- Webアプリケーション
- デスクトップアプリの開発
- 人工知能/機械学習の開発
- 植物やペットの監視システム
- おもちゃのAI戦車
- ドローンの自動操縦
最近話題の言語【Python】でできる15のこと
できることをご紹介する前に改めてPythonについて確認しておきたいと思います。
Pythonとは?
画像出典:Python.org
Pythonは、人工知能の開発やビッグデータの解析、それからIoTの開発現場などでよく使われるプログラミング言語です。
C++やJavaに比べると簡単な構文でコンパイル不要、そして読みやすく書きやすいという特徴があるため、プログラミング初心者でも安心して取り組める言語として知られていますね。
Pythonが、人工知能やデータ解析などでよく使われる理由には、数値解析に強い言語であることが挙げられます。 数値解析に強い理由としては、高速処理系のC言語に基づいて構築されたPythonライブラリのSciPyやNumPyがあるためと言われていますね。
そしてPythonは、特定の企業団体からの影響を受けにくいオープンソースで管理運営されていますので、幅広いジャンルの開発企業から支持されています。その他にもいろいろありますが長くなりますので、以下にPythonについて知っておきたいことを箇条書きで紹介させて頂きますね。
- GoogleやFacebook、Instagramなども開発にPythonを採用
- C/C++と連携可能*
- MacのOS XやLinuxのUbuntuなどOSでも使われている(Pythonバージョン2が使用)
- 学習と開発を加速させてくれる豊富なライブラリとパッケージ(パッケージ数117,000)
- 手軽な開発環境の構築(Anacondaなど)
- Python管理団体の豊富なキャッシュフロー、財団の資産は約2億円*(参考:Ruby管理団体は300万円程)
- 豊富な教材とすぐに役立つ、やってみたくなる事例が多い
- 親切なデバッグ
- プログラミング未経験者でも楽しめる
【C/C++と連携可能について】
C/C++のコードをPythonプロジェクトに、逆にPythonコードをC/C++プロジェクトに挿入できるので、用途が広がる
Pythonでできる15のこと(2020年版)
Pythonでできることは本当に色々あります。「おっ、これいいかも」「感動〜」的なポシブルもありますが、焦らずにPython学習はじめてくださいね。
仕事編
分別の自動化
Python と AI に興味のある方ならご存知の方もいらっしゃるかもしれませんが、「きゅうりのサイズ分別」を Python で実装した例が有名です。 Google の TensorFlow という AIライブラリを使って事前に学習していたきゅうりサイズを元に、コンテナから流れてくるきゅうりのサイズを画像判定。そして S だったらこっち、 M だったらこっち、という風に機械制御。きゅうり以外にも枝豆や衣類クリーニングの状態判定など、人の目に変わって Python ✖️ AI が社会で活躍しています。
ルートの最適化
トラックなど配送関係のお仕事をされている方は、ルートの最適化をスタッフの方が行っていると思います。しかし、中にはそのルート選定を Python ✖️ Google 位置情報 API や Map API などを使って最適化しようとする試みも。
社会実験の段階かもしれませんが、Google Map が多くの人を便利にしたことを思うと、運送業界の方にとってはこうした IT や Python パワーが脅威になるかもしれませんね。
自動応答
クロネコヤマトなどの LINE ボットから Webサイトのチャットボット、自動応答についてはずいぶん社会に浸透してきましたよね。しかし、LINEについては、お客様が選択して返答と予め決められたものの中から選んで会話するので、自然な言葉でやりとりすることはできませんでした。今は Google Chat API を使えば自然な形で自動応答が可能。
私も試しに Bot 君を開発し*、一緒に働いてもらっていますが、なかなか頼もしいですよ。時折トンチンカンな返事をするところも、どこか愛くるしくて、AI に感情が沸く自分にびっくりするものです。
支払いの自動化
PayPay に 楽天Pay、Line Pay に楽天銀行、三菱東京UFJ銀行など多くの金融機関、決済機関がAPIを公開し、プログラムから銀行データにアクセスし、残高を紹介したり振り込んだりすることができます。「えっ、それで何ができるの?」とお思いになるかもしれませんが、 free などの会計ソフトと連携すれば経理の人の負担が軽減できますね。 また毎月決まったところに支払いが必要な場合は、プログラムで自動化することも可能でしょう。
各種APIの利用には使用条件、事前申請が必要なモノもあります。
データ収集の自動化
「〇〇が欲しい」というツイートは、わりと Twitter 上に上がっています。一定キーワードがツイートされたら、その人めがけて Python で自動返信するものマーケティング的に面白いかもしれませんね。
”データ収集の自動化”と聞いても生活に馴染みがなくあまりピンとこないかもしれませんが、例えば毎日見るスマホ、面白いニュース届いていますか? なんとなく気になる広告やリンクをタップして、なんとなく情報を見ていませんか? 本当は調べておかないといけないこともあるのに。
ライフスタイルは人それぞれと思いますが、多くの場合で知っておいた方がいい情報というのはあります、ただ検索して確認するのが面倒なので調べないのが一般的。コロナのマスクや消毒でも分かったように、情報のインプットで大事ですよね。 この「調べるのは面倒、確認するのは面倒」という人間の怠慢、Python に任せることができます。
私の場合は、更新が激しいわりに情報が散らばっている Google の各サービスサイトのニュースフィードです。仕事柄知っておかないといけないことも多い一方で、いちいち検索するのは面倒。この処理を Python が代わりにやって、情報を整理してくれるんですね。
集められる情報は多岐にわたり、Twitter のつぶやかれ状況や Instagram の状況、YouTube の状況など多くのオンライン上の情報を Python で分別したり、配信してもらうことが可能。最初は開発が少し大変かもしれませんが、長い目で見ればお得なケースが多いでしょう。
データ記録の自動化
商品の値段や株価、競馬の結果、コミュニケーションの状況など知っておきたい、集めておきたい情報ってありませんか? また会議の議事録、大変ですよね。こうした従来人の手や目で見て確認・記録していた行為、Python が代わりにやってくれます。
フリーランスの案件でも 『Python ✖️ データ保存の自動化』 は多い案件の一つですね。 Chatwork の記録を自動化したり、YouTube チャンネルの状況を記録したりして、みなさん気になる情報を効率よく管理し、時間をうまく使っていますね。
プライベート編
株の自動売買
2020年8月末にとうとう個人向けにもAPIを公開した auカブコム証券。今まで不可能だった株の自動売買が個人でもできるようになりました。株取引が好きな方、Python に興味ある方、興味深いですよね。
仮想通貨の自動売買
先ほどの証券取引所のAPIの引き金となった仮想通貨文化。レバレッジは下げられたものの、各取引所のAPIを使って仮想通貨の自動売買や自動送金など多くの取引所機能をプログラム処理することができますね。
株の自動売買や仮想通貨の自動売買といった機能、Python だけを使えば自分限りのプログラムになりますが、 HTML や JavaScript を使って Web サービスに組み込めば、ちょっと面白いサービスを開発できそうですよね。
Webアプリケーション
Python の参考書などを読んだりプログラムを実行していると、「で、どうやって Webサービスとか作るの?」と思う方、多いと思います。データ収集や AI の開発要領が分かったら今度はサービス化したい、できたらいいな、と思いますよね。 Python で Web サービスを作る場合は、 データベースを伴う処理であれば Django、 データベースを伴わないシンプルな Webアプリケーションであれば Flask を使うと画像解析や文字判定などを行うサービスを作ることができるでしょう。
デスクトップアプリの開発
デスクトップアプリというとCやC++、Javaを連想する方もいらっしゃると思いますが、Pythonでデスクトップアプリを作ることができます。 あえてPythonでデスクトップアプリを作る理由としては、
- C++やJavaに比べると早く開発できる
- ライブラリやドキュメント、情報が豊富
- デスクトップ作成用のフレームワークの存在
が挙げられます。 一例を上げてみますと機械学習やデータマイニングのソフトウェアとして有名なOrage*は、Pythonベースで作成されています。 本稿の作成にあたって私ははじめてPythonでGUIを作ってみましたが、「簡単でおもしろいな」と思いました(上記動画参照)。
人工知能/機械学習の開発
Pythonは、人工知能ソフト、中でもディープラーニングや機械学習を用いたソフト開発の標準的なプログラミング言語として有名です。 理由は、ディープラーニングや機械学習のプログラム処理に高度な数値計算が必要となり、そしてコンパイル不要で手早くテストランできる環境が求められることから Pythonがよく使われます。
最近は自動運転車ならぬ「自動マリオカート(ゲーム)*」もPythonで自動運転可能な時代となってきています、ちょっとスゴイですね。 こちらの自動運転マリオカートをはじめ、スーパーマリオなどもコードが公開されていますので、自分でも試してみたいですね。
植物やペットの監視システム
家に昆虫やペット、植物がある方は、何かと様子が気になりますよね。室温、水分、様子、葉の状態、こうした従来人間が目で見て確認していたこと、 Python と各センサーを用いて自動監視することが可能。ラズパイマガジンなどを参考にすればチュートリアルも充実していますので、プログラミング初心者の方でも Python ✖️ DIY を楽しめることでしょう。
おもちゃのAI戦車
ドローンメーカーで No.1 の DJI 社が販売している AI戦車(おもちゃ)。こちら Scratch か Python で自動操縦することができます。「ん、なんのために?」それはあなたをゴキブリから守ってくれるかもしれません。ゴキブリを画像認識し、自動追従、そして撃墜、なんてできたら面白いですし、その映像を YouTube にあげればうけそうですね。
ドローンの自動操縦
こちらも DJI からリリースされている機械で、Scratch か Python でドローンを自動操縦することが可能。 ちょっと台数を増やせばプロジェクトマッピングに変わる新しいパフォーマンスになるかもしれませんね。
このほかにもロボット制御のフレームワーク Robot Framework* を Python で使用できたりと、多くの方が興味を持つ分野のプログラムを Python で制御することができます。
Pythonエンジニアの年収や人気の理由について
現在日本をはじめ世界中でPython人気がある理由の一つに、2013年9月にオックスフォード大学のオズボーン准教授が公開した論文「コンピュータに取って代わる仕事」が関係しています。
先日日本でも大手銀行が人工知能の活用で3万人規模の人員削減をする、と発表しましたね(2017.11)。 既存のパターン化された仕事は、これからどんどんロボットや人工知能搭載のソフトウェアに置き換わっていき、代わりに人工知能分野の開発者が必要とされています。
その結果、人工知能開発によく使われるPythonに人々が集まっているという状況があります。 その他にも、増え続けるビッグデータの経営資源化、スマホやウェアラブルによってより複雑になる個人の消費行動、セキュリティや自動運転のための画像解析技術、このようなことから今まさに時代はPythonを求めているのですね。
参考までに求人仲介サイトでPythonエンジニアがどれだけ求められているか、他の言語と合わせて比較してみました。
Python | Java | PHP | Ruby | C++ | |
---|---|---|---|---|---|
DODA | 292 | 1969 | 869 | 399 | 850 |
indeed(日本) | 8894 | 57260 | 32093 | 13940 | 29140 |
indeed(米国) | 46118 | 62638 | 14646 | 18167 | 31830 |
国内とアメリカではPythonエンジニアの需要が異なりますが、将来的には日本もアメリカのような分布になると考えられます。
また年収は求人票を見る限りでは、400〜800万円とピンキリですが、アメリカにおいては明らかにPHPやJavaより平均年収が高くなっています。
プログラミング言語 | 職種 | 平均年収(米国) |
---|---|---|
Java | ソフトウェア・エンジニア | $81,714 |
Ruby | ソフトウェア・エンジニア | $86,994 |
PHP | ソフトウェア・エンジニア | $77,466 |
Python | ソフトウェア・エンジニア | $86,566 |
Python | データサイエンティスト | $96,607 |
データ参照:PayScale
\AIエンジニアに必要なスキルが身に付く/
まとめ
今回Pythonのできることをご紹介させていただきましたが、「チョット試してみたい」と思われましたでしょうか? もし「チョット試してみたい」と思われたなら、プログラマやエンジニアへの道も開けるように思います。
実際に自分のパソコンでPythonを使うには、いくつかのソフトをインストールする必要があり、設定を間違えるとややこしくなるケースもありますので、本やレッスンビデオにしたがって手続きすることをオススメします。
『ときメモ』でプログラミングを始めた僕が、東京進出を果たし、いま抱いている野心
**——『ときメモ』に人生を変えられた男。** プログラミングに強い興味を抱くまでのきっかけは、人それぞれです。CodeCampGATE(現:エンジニア転職コース)修了者の太田さんは、とあるゲームに感化されてプログラミングに情熱を注いできました。 今回は、太田さんとプログラミングとの出会い、大企業からベンチャー企業への転身、地方から東京への転職活動に踏み切るまでのお話を伺いました。 ※太田さんが受講したコースはCodeCampGate(現:エンジニア転職コース)です。このコースの特徴は - 4ヶ月に及ぶ基礎学習と実践演習 - 計40回のマンツーマンレッスン - 職務経歴書の添削、模擬面接、エンジニアメンターによる推薦状の作成、など充実したキャリアサポート 未経験からエンジニアに転職するまでを徹底的に支援するコースです。コース詳細はこちらから確認してみてください! ▶︎https://codecamp.jp/courses/engineer
- この記事を書いた人
- オシママサラ