「Python」(パイソン)は、現役エンジニアの中で特に人気のある言語。プログラミング言語の人気ランキング(GitHub)でも上位に入っています。
そんな人気の「Python」ですが、
- Pythonって、何ができるの?
- Pythonを身につけると、将来どんな仕事に活かせるの?
- Pythonを、コスパ良く学ぶ方法は?
と、初心者の方からこんな疑問をよく聞きます。
Pythonでできることは、大きく次の5つ。
- AI(人工知能)の開発
- 日常業務の自動化
- Webアプリケーションの開発
- Webサイトなどのデータ分析
- ブロックチェーンのアプリ開発
Pythonは成長市場のAIやデータサイエンスなどの分野で使われています。Pythonを身につければ、それだけ多くの仕事にかかわれるチャンスがあります。
この記事を書いているわたしはプログラミング歴7年ほど。
これからプログラミングを始めようと考えている方に、「Pythonって何ができるのか?」というテーマでわかりやすく解説していきます。
※10分くらいで読めます。これからPythonでプログラミング学習を検討している方の参考になると思います。
もくじ
Pythonでできること(代表例5つ)
「Pythonでは何ができるのか?」、代表例として次の5つを紹介します。
Pythonでできること
それでは、順番に見ていきます。
① AI(人工知能)・機械学習の開発ができる
Pythonでできることの1つ目は、「AI(人工知能)」を開発することです。
AIとは、人間と同じようにコンピューター自身が学習して正しい答えを出すシステムのこと。
AIの分野を分けるとは主に以下の5つです。
項目 | 説明 |
---|---|
(1)画像認識 | 画像や映像などに映っている物体の形状や特徴を、AI自身が検知・認識する技術のこと。 (例)顔・指紋認証機能によるユーザーの識別。工場で製造される商品に不良品がないかどうかのチェック。 |
(2)音声認識 | 音声を認識して文章に変換したり、ヒトの声に合わせてシステムを制御したりする技術のこと。 (例)スマートスピーカー、文字起こしアプリ |
(3)言語処理 | 日本語や英語・中国語などといった、人間が使う言語を認識して処理する技術のこと。 (例)Google翻訳などの翻訳ツール、チャットボットによる応対・自動作文ツール 「ChatGPT」も言語処理をするAIの一つです。ChatGPTは、OpenAIというアメリカの会社が作っていて、Microsoft社が数10億ドルを出資している。 |
(4)データ分析 | 大量のデータ(ビッグデータ)を分析して、将来の需要やコストなどを予測する技術のこと。 (例)購買予測、株価予測 |
(5)自動制御 | 周りの環境を監視・分析・予測することで、コンピューター自ら最適な状態になるよう自動制御する技術のこと。 (例)車の自動運転、スマート農業 スマート農業: AI、IoT、天候データを活用して、日光・温度・水分量を自動制御し、収穫の質を高めるといった取り組みのこと。 |
ヒトがしている仕事をAIが代替えする、という流れがすでに起きています。
AIはこれからも進化を続けていく技術。Pythonでは最先端のAI技術を開発することができます。
② 日常業務を自動化できる
Pythonでできることの2つ目は、ヒトが手作業で行っている業務を自動化することです。
Pythonで自動化できる日常業務は、たとえば以下のとおり。
わたしの場合、1時間かかっていたExcelのデータ入力をPythonで処理すると、ほんの数秒で終わりしました。決まった単純作業はプログラムに落とし込みやすいですね。
日常業務でPythonを使うメリットは、時間短縮です。
その結果、「〇〇さんは仕事がはやい」って良い評価にもつながるし、その分早く家に帰って自分の時間を楽しむこともできます。
PythonでExcelファイルを読み書きするのは結構かんたんにできます。
以下リンクでは、読み書きするサンプルコードを紹介しています。「PythonでExcelを扱ってみたい!」という方はぜひご覧ください。
>>【PythonでExcelファイルを操作】OpenPyXLで読み書きかんたん!(サンプルコードあり)
-
【PythonでExcelファイルを操作】OpenPyXLで読み書きかんたん!(サンプルコードあり)
続きを見る
③ Webアプリケーションの開発ができる
Pythonででできることの3つ目は、「Webアプリケーション」を開発することです。
「Webアプリケーション」とは名前のとおり、インターネット(ウェブ)から利用するアプリケーションのことです。
Pythonで作られた有名なWebアプリケーションは、以下のとおり。
上記のWebアプリケーション、実は中ではPythonが使われています。「知らなかった」という方も多いと思います。
もちろんPython以外の言語も使われていますが、Pythonではこのような大きなWebアプリケーションも開発することができます。
④ Webサイト上のデータ収集・分析ができる
Pythonでできることの4つ目は、Webサイト上のデータ収集・分析をすることです。
特に、指定したWebサイトから必要なテキストや画像、データなどを自動的に収集すること「Webスクレイピング」と言います。
Pythonでできることは、たとえば、以下のとおり。
手作業でひとつずつデータをダウンロードして集計していたのが、Pythonで自動化すれば、大幅な時間短縮ができます。
ネット上のデータ量は膨大です。人が分析すると一生かかっても終わりません。その膨大なデータ分析をPythonにやってもらおうというわけです。
ひとつ注意点です。Webサイトによっては、Webスクレイピングを禁止している場合があります。(例:Twitter)
スクレイピングをするときは、各Webサイトの規則を必ず確認し、迷惑をかけないようにしてください。
⑤ ブロックチェーンのアプリ開発ができる
Pythonでできることの5つ目は、「ブロックチェーン」アプリを開発することです。
「ブロックチェーン」とは、他の人がデータ改ざんできないよう安全にデータを記録・管理する技術です。
システムが持つ一つ一つのデータ(ブロック)を、鎖(チェーン)のようにつないでデータを管理するところから、「ブロックチェーン」と呼ばれています。(別名、「分散型台帳技術」)
ブロックチェーンは、金融や医療、物流など、データの信頼性が求められる分野で活用されています。
具体的な例をあげると、たとえば、何かを売買するときって、”契約”をお互い交わしますよね? この契約を、紙の書類でやり取りするのではなく、ブロックチェーン上で自動的に実行する仕組み「スマートコントラクト」(訳:かしこい契約)が普及しつつあります。
さらに、「NFT」(Non-Fungible Token:代替不可能なトークン)でも、デジタルアートの所有者であることを証明する技術として使われています。
ブロックチェーンの中で使われている技術は以下のとおり。
- P2P(ピアツーピア)
- デジタル署名(公開鍵暗号)
- ハッシュ関数(SHA256)
上記の技術によって、ブロックチェーンで保存されたデータは安全に管理されます。知っているかもですが、暗号資産のビットコインのデータ管理も「ブロックチェーン」の技術が使われています。
Pythonには、ブロックチェーンのアプリケーションを開発する「ライブラリ」や「フレームワーク」が用意されています。
ブロックチェーン仕組みは複雑ですが、ライブラリを利用すれば効率的にアプリを開発することができます。
Pythonが苦手なこと(3つ)
ここまで見てきたとおり、Pythonでできることはたくさんありますよね。
でも、Pythonができないこと(苦手なこと)もあります。それは以下の3つです。
Pythonだと上記アプリをまったく開発できない、ということではないのですが、「Pythonよりもっと適したプログラミング言語がある」という意味です。
では、どんな言語が適しているか?
以下に、”Python以外”のプログラミング言語を紹介します。
① スマホアプリの開発
スマホアプリの開発でよく使用される言語は、以下の2つです。
スマホアプリの開発で、Pythonを使うことはまれです。
その理由は、上記の言語がより適しているからです。スマホアプリの開発には、スマホアプリ固有の上記言語を学ぶ必要があります。
② デスクトップ系アプリの開発
ExcelやWordのようなデスクトップアプリ開発で使用される言語は、OS別には以下の2つです。
スマホアプリと同じく、デスクトップアプリ開発でも、Pythonを使うことはまれです。なぜなら、上記の言語の方がより適しているからです。
③ 高速処理が求められるアプリの開発
ビデオゲームや科学シミュレーションなど、高速処理が必要なアプリ開発には、C#やJavaのような言語を使うのがベストです(コンパイル型言語)。
高速処理が求められるアプリ開発に、Pythonは向いていません。
Pythonは、プログラムを一行ずつ読み取って実行していきます(インタプリタ型言語)。そのため、実行速度が遅くなることがあるからです。
Pythonが向いているのは、高速な処理を必要としない以下の用途です。
Pythonのスキルを活かせる職種(4つ)
ここまで見てきたとおり、Pythonはさまざまな分野で使われています。Pythonをマスターすれば、それだけ多くの仕事に応用ができそうですよね。
Pythonを学ぶと「将来どんなキャリアを歩めるのか?」、「どんな場面で役に立つのか?」
ここではPythonのスキルを活かせる、代表的な4つの職種を紹介します。
① AIエンジニア
AIエンジニアは、AI(人工知能)を使ったシステム開発やデータ分析をする人です。
今さら説明不要ですが、AIはあらゆる分野で使われています。たとえば、産業、福祉、医療、ゲーム。
日常生活の身近なところでもAIは使われています。車の自動運転、お掃除ロボット、Googleの検索エンジンにもAIの技術が入っています。
AIを「使うより、作りたい」って考えている人は、AIエンジニアが絶対おすすめです。
AIは新しいものが次々と出てきて、右肩上がりにぐんぐん伸びている市場。AIエンジニアは将来性の高い職業です。
② Webアプリケーションエンジニア
Webアプリエンジニアは、Webブラウザ(Google Chrome、Safariなど)の上で動作するソフトを開発する人です。
「アプリ」と聞くとスマホ用のアプリ、を想像するかもしれませんが、ここで言うアプリは、スマホではなく、上記のとおり「Webブラウザ」の上で動くアプリのことです。
(例)Amazonや楽天市場などのECサイト、Gmail
仕事内容は、ユーザーが使いやすいようにサイトを設計・開発すること。実際の開発現場では、開発だけでなくマーケティングや営業サポートなど、いろいろな対応が求められて大変なところもあります。
でも、その分やりがいもあるし、技術だけでなくビジネスセンスも身につく職種が、Webアプリエンジニアです。
③ データサイエンティスト
データサイエンティストは、「ビッグデータ」を分析して、データの中から世の中に役立つ有益な情報を見つけ出す人です。
この「データから有益な情報を見つけ出す」のに、「Python」を使います。
今の世の中、たくさんのデータであふれています。ネット上のSNS情報、GPSの位置情報、ECサイトの顧客情報。「ビッグデータ」とは、このあふれかえった大量のデータのことです。
「膨大なデータの中にどんな価値があるか?」を見つけ出したり、「データを活かして社会をどう変えていくのか?」を考えたり、もっとよい世界に変えていくためのアイディアを社会に提案するのがデータサイエンティストの仕事です。
データサイエンティストは、世の中の人々に役立つ壮大な職業です。これからもその需要は増えてくと思います。
④ Webマーケター
Webマーケターは、Webサイトの競合分析やアクセス解析、Web広告による集客など、Webに関する幅広い業務をする人です。
Webマーケターの仕事は、商品を「誰が」「いつ」「どこで」買ったかを分析することで、「どうすれば売上がもっと伸びるか?」戦略を考えることです。
売上データやWebサイトのアクセスデータは膨大です。この分析を、Excelの関数で計算するには限界があります。
ここで、「Python」の登場です。Pythonでプログラムを作れば、大量のデータ分析もあっという間に完了です。
『Python × Webマーケティング』
上記は、Pythonを学びつつ、Webマーケティングの知識も身につけて、2つのスキルを掛け合わせること。
2つのスキルを持つWebマーケターはなかなかいません。圧倒的に飛び抜けた存在で、たくさんの企業から求められる人材です。
Pythonは将来性が高く、初心者におすすめ
ここまで、「Pythonは何ができるのか?」、「Pythonを活かせる仕事には何があるのか?」を学んできました。
「Python、勉強してみようかな」と興味がでてきた方もいれば、「まだよくわからない」と言う方もいると思います。
Pythonは、これからプログラミングを始めようと考えている方に、おすすめのプログラミング言語です。
理由は大きく2つです。
Pythonに少しでも興味がわいたのであれば、次の「コスパ良く学ぶ(3つのステップ)」も読んでみてください。無料の学習サイトを紹介しています。
Pythonをコスパ良く学ぶ(3つのステップ)
ここではPythonを初めて学ぶ方に、おすすめの学習方法を紹介します。
Pythonの学習は、以下の3ステップで進めるのが、一番コスパ良く、体系的に学ぶことができると思います。
あと -日-時間-分-秒- !
Udemyの『Pythonコース』をチェックしてみる
初心者におすすめなのが「オンライン学習サイト」。というのも、基礎的な内容であれば、無料で学習できるからです。
以下に、Pythonの「オンライン学習サイト」を紹介します。
オンライン学習サイト
① Progate(プロゲイト)
オンライン学習サイトとして最も有名なProgate。
Pythonの基礎的な内容を無料で学ぶことができます。細かいフォローがあるので、プログラミング初心者でも最後まで安心して学習することができます。
>> プログラミングを基礎から学べる「Progate」公式サイト
② ドットインストール
ドットインストールは、プログラミング初心者向けの学習サイト。動画を見ながら学べるのでわかりやすいです。
基礎的な講座は無料ですが、応用編は有料です。Pythonを継続して学習するか迷っている人は、まずは基礎編を受講して様子を見てみるのがおすすめです。
>> 初心者向けの学習サイト「ドットインストール」公式サイト
挫折せずに学習を續けるコツ
作りたいアプリを具体的にイメージすること
挫折せずにPythonの学習を続けるポイントがあります。
それは、作りたいアプリを具体的にイメージすることです。
たとえば、
- ガメラで人の画像を取り込んで、特定の人を検出するAIアプリを作りたい。
- 株価をネットから取得して、ブラウザにチャートを表示するWebアプリを作りたい。
などです。
「〇〇ができるアプリにしよう」、「アプリのデザインはこうしよう」とか、どんどんノートに書き出してみて下さい。
作りたいアプリのイメージを具体的に書き出せば、勉強のモチベーションアップにつながってきますよ。
未来の自分のために、今がんばる!
この記事を読んでいるということは、1年後とか3年後とか、将来のキャリアアップを考えているのではないでしょうか?
将来、自分がどうなるかは、今の自分次第です。
未来の自分のために、今がんばりませんか?
たとえば、転職の最終面接を受けている場面を想像してみてください。
自分が作ったアプリを転職先の面接官にしっかりアピールしたいですよね?
最終面接、自分のスキルが認められたら、このチャンスをつかむことができるはず。
今やっていることが、良いも悪いも1年後、3年後の自分に返ってきます。
ここまで読んでくれたあなたは、将来について真剣に考えている人です。きっとハッピー未来が待っているはずです!
まとめ:Pythonでできること
この記事では、「Pythonでできること」を5つ紹介しました。
Pythonでできること
上記のとおり、Pythonはさまざまな分野で使われています。マスターすれば、それだけ多くの仕事に応用ができそうですよね。
Pythonは、これからプログラミングを始めようと考えている方に、おすすめのプログラミング言語です。
なぜなら、読みやすく・書きやすいので、初学者でも学習しやすいから。
さらに、成長市場のAIやデータサイエンスの分野ではメインで使われています。習得すればエンジニアとしての需要も期待できるのもおすすめ理由です。
将来性の高いPython。まずは勉強を始めてみて、自分の方向性と合うか見てみるのが、キャリアアップにつながる一歩だと思います。