WHAT YOU CAN MAKE

Pythonで作れるもの一覧【目的別】動く実例178本への入口

「Pythonって、結局何が作れるの?」に、抽象的なリストではなく目的別の早見表と、実際に動くサンプルへのリンクで答えます。得意分野だけでなく、あえて「Pythonが不得意なもの」も正直に。これからPythonをやるか迷っている方の判断材料にどうぞ。

🎯 10の目的から逆引き 🔗 実例: 当サイトに178本 ⏱️ 全文13分/目的の1章だけなら3分

結論:Pythonが得意なのは、画面のある小さな道具・仕事の自動化・データの集計とグラフ・株価など公開データの活用・画像やPDFの一括処理・Web連携・AI、そしてゲームです。逆にスマホアプリやWebの見た目、高速な3Dゲームは不得意です(§9)。この記事は「作りたいもの」から動くサンプルを逆引きする地図です。まずは下の早見表で、自分の目的に近い行を探してください。

1. 目的別マップ:作りたいものから探す

「Pythonで作れるもの」をカテゴリ名で並べても、自分がどれを開けばいいかは決まりません。そこで読者側の目的(やりたいこと)を左端に置いた早見表にしました。近い行の入口リンクから、その目的の章へ飛べます。

やりたいこと作れるものの例難易度入口
画面のある道具がほしい電卓・ToDo・ストップウォッチ★☆☆2章へ
ファイルを整理・一括処理したい一括リネーム・重複検出・バックアップ★☆☆〜★★☆3-1へ
Excel・CSVの集計を自動化したいレポート生成・集計表・データ整形★★☆3-2へ
決まった時刻に通知・実行したいデスクトップ通知・タイマー・メール一括送信★☆☆〜★★★3-3へ
データをグラフにしたい支出グラフ・ダッシュボード・語句集計★★☆4章へ
投資・お金のデータを扱いたい株価データの取得・チャート表示★★☆4-1へ
Web・APIとつなげたい天気予報アプリ・API連携・情報収集★★☆〜★★★5章へ
画像・PDFをまとめて処理したい一括リサイズ・PDF結合・請求書PDF★★☆6章へ
AI・機械学習を試したい予測モデル・ローカルAIチャット★★☆〜★★★7章へ
遊べるものを作りたい神経衰弱・ハングマン・タイピング★☆☆8章へ

この表で目的が1つに絞れたら、その章だけ読めば十分です。ポイントは、上4行(画面のある道具・ファイル整理・Excel集計・通知)が「学びやすさ」と「役立ち度」の両方で入口に向いていること。中ほどの行はライブラリの知識が要り、最終行のゲームは難易度こそ低いものの仕事には直結しません。次の図は、これらの目的を大きく7つの分野にまとめ、「入りやすさ」と「実務での役立ち度」の2軸で配置したものです(画像・PDFは業務自動化、投資データはデータ分析に含めています)。

Pythonで作れるものの全体マップ 入りやすさ(横軸)と実務での役立ち度(縦軸)で、7カテゴリを配置した概念図。デスクトップアプリと業務自動化が入口として最も入りやすく役立つ位置にある。 入りやすい → ← 実務で役立つ 入口におすすめゾーン 業務自動化 デスクトップアプリ AI・機械学習 Webアプリ・API データ分析・可視化 ゲーム IoT・電子工作
図:Pythonで作れるものを「入りやすさ×役立ち度」で配置した概念図(右上ほど入口向き)

2. 画面のある小さな道具をつくる(デスクトップアプリ)

ウィンドウ・ボタン・入力欄のある「画面つきアプリ」です。Pythonに標準で入っている tkinter だけで作れるため追加インストールが不要で、「プログラムが動いた」を一番実感しやすい目的です。

どのくらい手軽かというと、ウィンドウを1枚出すだけならこれで動きます。

import tkinter as tk

root = tk.Tk()                       # ウィンドウを作る
root.title("はじめてのウィンドウ")
tk.Label(root, text="Hello, World!").pack(padx=40, pady=30)
root.mainloop()                      # 画面を表示し続ける

たった5行で、タイトル付きのウィンドウに「Hello, World!」が表示されます。ここにボタンや入力欄を足していくと、下に挙げたような小さなアプリになります(すべて当サイトの実例・完成コードつき)。

言葉だけだとイメージしづらいので、当サイトで実際に作った完成画面を並べておきます(すべて実機のスクリーンショットです)。

tkinterで作ったHello Worldウィンドウの完成画面
Hello Worldウィンドウ(最初の1本)
tkinterで作ったシンプル電卓アプリの完成画面
電卓
tkinterで作ったToDoリストアプリの完成画面
ToDoリスト
tkinterで作ったストップウォッチアプリの完成画面
ストップウォッチ

当サイトはこの分野が主戦場で、初心者向け89本中級者向け89本の計178本を難易度順に揃えています。全本、Windows 11 の実機で起動と基本操作を確認済みです(各ページの「動作確認環境」欄に記載)。一部の作例には実機のスクリーンショットも載せています。画面のある道具を1本完成させると、次に挙げる自動化ツールにも「実行ボタン」を付けられるようになります。なお作った道具を同僚に渡したい場合は、相手のPCにPythonを入れてもらうか、PyInstallerのようなツールで実行ファイルにまとめる方法があります。まずは自分のPCで動けば十分なので、配布は後回しで構いません。

3. 仕事の繰り返しを自動化する(ファイル・Excel・通知)

「毎週やっているExcelの集計」「散らかったフォルダの整理」「決まった時刻の通知」のような繰り返し作業を、プログラムに任せる目的です。プログラマーでない職種の人が、Pythonの恩恵を最も受けやすい分野でもあります。

効果の出方に特徴があります。「毎週金曜、5つの部署から届くExcelを1つにまとめて集計表を作る」──手作業なら毎週1時間の仕事が、一度書けばワンクリック数秒になり、しかも翌週も、その翌週も効きます。自動化の効果は「1回あたりの時間×繰り返し回数」で積み上がるので、選ぶ題材は「面倒な作業」より「何度もやる作業」が正解です。

3-1. ファイルの整理・一括処理

ファイル名の変更、仕分け、重複の洗い出し、バックアップ。Pythonの標準ライブラリ(os・shutil・pathlib)だけで大半が書けるため、追加インストールなしで始められる領域です。まずはコピーを取った練習用フォルダで動かし、削除や移動は動作を確認してから本番のフォルダに向けてください。

3-2. Excel・CSVの集計

Excelファイルの読み書きは openpyxl、CSVや表データの集計は pandas が定番です。関数やマクロで組んだ集計をPythonに移すと、ファイルが増えても同じスクリプトで処理でき、手順が1本のコードとして残ります。

この目的で最初にぶつかるのは、たいてい計算ロジックではなく文字コードです。Windowsの表計算ソフトが保存したCSVはcp932(Shift_JIS系)で書かれていることが多く、そのまま読み込むと UnicodeDecodeError が出ます。読み込み時に文字コードを指定すれば通ります(直し方はUnicodeDecodeErrorへ)。エラー文を見て慌てずに切り分けてください。

3-3. 通知と定期実行

「指定した時刻に知らせる」「一定間隔で記録する」「定型のメールをまとめて送る」といった、時間に紐づく処理です。時刻で処理を起動する感覚がつかめると、前の2つで作ったツールを「自分で動くツール」に変えられます。メールの一括送信は宛先ミスの影響が大きいので、必ず自分宛の少数で試してから使ってください。なお広告や宣伝を目的とするメールは、あらかじめ同意を得た相手にだけ送り、送信者名と受信拒否の連絡先を明記することが特定電子メール法で求められます。

「毎朝9時に自動で走らせたい」となったら、スクリプト自身に待たせる方法と、OS側の仕組み(Windowsならタスクスケジューラ、macOS・Linuxならcronなど)に登録する方法の2択になります。PCを常時起動しない使い方なら後者のほうが取り回しが楽です。後者を実際に登録する手順は、タスクスケジューラ(schtasks)とcronで毎日1回だけ走らせる回にまとめました(Linux Mint で実際に走らせて確認しています)。

「自分の仕事のあの作業、自動化できるかも」と思えたら、それが一番良い学習テーマです。題材の宝庫はあなたの職場にあります。

この分野をもっと体系的に学ぶなら、Excel・PDF・メールの操作を1冊で通して扱う『退屈なことはPythonにやらせよう』(当サイトの参考書ランキング総合3位)が定番です。

4. データを集計してグラフにする

CSVやExcelのデータを読み込んで、集計し、グラフにする──Pythonが世界中の研究者・アナリストに使われている理由がこの分野です。pandas(表データ処理)と Matplotlib(グラフ描画)が二本柱で、3章の集計ツールに「見える出力」を足すと、そのままこの目的に届きます。

最初に驚くのは、グラフの日本語が「□□□」と豆腐のように化ける現象です。Matplotlibは初期設定のフォントに日本語を持たないためで、日本語対応フォントを指定すれば直ります。バグではないので、ここで止まらないでください。どのライブラリを入れるか迷ったときは、用途別に整理したよく使うPythonライブラリ51選から選べます。

4-1. 投資・お金のデータを扱う練習

株価や配当のような公開データは、件数が多く更新もされるため、取得と集計の練習台として扱いやすい素材です。ここで扱うのはデータを取得して表やグラフにする手順であり、値動きの予測や売買の判断ではありません。本記事および当サイトの投資関連記事は投資助言ではなく、個人の学習・ツール開発の記録です。詳しい免責は免責事項をご確認ください。

5. Web・APIとつなげる

ブラウザからアクセスするWebサービスの「裏側(サーバー側)」もPythonの得意分野です。たとえばInstagramは、Python製Webフレームワーク「Django」の大規模な導入事例です。開発チーム自身が2016年の技術ブログで、当時「世界最大のDjango導入事例」だと説明しています(Instagram Engineering 公式ブログ)。Flask・Django・FastAPIといったフレームワークを使えば、小さな社内ツールから大規模Webサービスまで、同じPythonで作れます。

ただし最初からWebサービスを作る必要はありません。外部のWeb APIから情報を取ってきて画面に出すところからなら、2章のデスクトップアプリの延長で体験できます。

スクレイピング(Webページから情報を機械的に取得する手法)を試すときは、技術より先に「そのサイトで許されているか」の確認が必要です。利用規約と robots.txt を読み、禁止されていれば使いません。確認の手順はPython株価スクレイピングは禁止?規約とrobots.txtの確認方法で解説しています(題材は株価サイトですが、可否の調べ方は他のサイトでも同じです)。

APIキーの扱い:外部のAPIを使う場合も、APIキーはコードに直書きせず環境変数などに逃がし、公開リポジトリへ上げないようにしてください。多くのAPIには利用回数の上限があるため、連続実行の間隔を空けるのも作法です。

Webアプリは「データベース・画面・通信」が一度に登場するため難易度は上がりますが、その分、作れたときに見える世界が変わります。URLを共有すれば誰でも自分の作品を使える──デスクトップアプリには無い体験です。

6. 画像・PDFをまとめて処理する

「写真200枚を同じ幅に縮める」「複数のPDFを1つに結合する」「入力内容からPDFの帳票を出す」といった、1枚ずつなら簡単でも枚数が増えると苦痛になる作業です。画像は Pillow、PDFは PyMuPDF(閲覧・抽出)や ReportLab(生成)が定番で、どれも数行から書き始められます。

元ファイルを上書きする処理は、出力先を別フォルダにしておくと失敗しても取り返せます。3章のファイル整理と組み合わせると、「取り込む→変換する→仕分ける」が1本のスクリプトになります。

7. AI・機械学習

この分野ではPythonがほぼ共通語です。scikit-learn・PyTorch・TensorFlowといった主要ライブラリはPython前提で、ChatGPTなどのAI APIを呼ぶ公式SDKもPythonが最も充実しています(たとえばOpenAIは公式のPythonライブラリを配布しています)。

仕組みの理解から入ると数学でつまずきやすい分野なので、まずはできあがったモデルやAPIを「使う」側から入ると、動くものが早く手に入ります。どちらの実例も、画面部分は2章と同じtkinterです。

8. ゲーム・遊べるもの(IoT・電子工作も)

本格的な3Dゲームは不得意ですが(後述)、パズル・カード・クイズのような「遊べるもの」は十分作れます。ゲームは「状態管理・イベント処理・ロジック」の練習として優秀で、何より作っていて楽しいのが強みです。仕事に直結する題材が思いつかないときの入口としても向いています。

8-1. IoT・電子工作と、専門ソフトの操作言語

Raspberry Pi(手のひらサイズの小型コンピュータ)と組み合わせれば、温度センサーの記録装置や自動水やり機のような「現実世界で動くもの」も作れます。センサーの値を読む・モーターを回すといったハードウェア制御を、画面アプリと同じPythonの文法で書けるのが利点です。

さらにPythonは、専門ソフトの「操作言語(マクロ言語)」としても広く採用されています。科学計算・統計解析、3DCGソフト「Blender」の自動化、地理情報システム(QGIS)やAdobe系ツールの拡張など、別の分野に進んだときにも「ここでもPythonが使える」場面に出会えます。守備範囲が広い理由は、文法がシンプルで書きたい処理を短く書けること、Excel操作から画像処理まで既製の部品(ライブラリ)が揃っていること、使う人が多く日本語の解決策が見つかりやすいこと──この3つの積み重ねです。

9. 逆に、Pythonが不得意なもの【正直に】

ここを書かない紹介記事が多いのですが、入口で知っておくべき大事な話です。Pythonは万能ではありません。

作りたいものPythonでの現実本流の技術
スマホアプリ(iPhone/Android)実用レベルでは非推奨Swift / Kotlin / Flutter
Webサイトの見た目(フロントエンド)担当外(裏側のみ)HTML / CSS / JavaScript
高速な3Dゲーム処理速度的に不向きC++ / C#(Unity・Unreal)
処理速度が命のシステム実行速度は遅い部類C / C++ / Rust / Go

これは「Pythonを選んだら損」という話ではありません。実際の開発現場では「見た目はJavaScript、裏側とデータ処理はPython」のように言語を組み合わせるのが普通で、Pythonはその中で最も「つぶしが効く」位置にいます。つまりPythonは何でも作れる魔法の言語ではなく、データ・自動化・AIに強く、小さな道具を素早く作れる言語です。スマホアプリが作りたいのにPythonを始めると遠回りになります。逆に、仕事の効率化・データ・AIに興味があるなら有力な選択肢です。

10. 作りたいものが決まらないときの探し方

ここまで読んでも「自分はどれだろう」と決まらないことがあります。そのときは、興味から選ぼうとせず、すでに自分がやっている手作業から逆に引くと決まります。3手順です。

  1. 直近1週間で2回以上やった手作業を書き出す ── 毎週のExcel集計、写真のリサイズ、請求書づくり、フォルダの片付け。回数が多いものほど、自動化したときに戻ってくる時間が大きくなります。
  2. その作業の「入力」と「出力」が何かを見る ── ファイルからファイルならファイル整理画像・PDF、WebからファイルならWeb・API、ファイルからグラフならデータ集計が入口です。
  3. どれにも当てはまらなければ、画面のある道具を1本 ── 2章の入口を1本完成させると、その後どの目的に進んでも「作り切る体力」が使い回せます。
🗺️
目的が決まったあとの進み先

進む順番を決めてほしい方入門後の練習ロードマップに、写経から自作までの段階と最初の10本があります。
お題だけ欲しい方Python練習アプリ・お題集にレベル別と苦手スキル別のドリルがあります。
作品として残したい方Pythonポートフォリオは何を作る?で題材の選び方と見せ方を解説しています。
環境がまだの方Pythonのインストールから。長く使う学習用マシンの目安はPython学習・開発におすすめのPCにまとめています。

11. よくある質問(FAQ)

これからPythonを始めるか検討中の方から、実際によくいただく質問をまとめました。

Q. プログラミング未経験でも、どれくらいで何か作れるようになりますか?

文法の基礎(変数・if・for・関数)を2〜4週間で押さえれば、1〜2時間で完成する小さなデスクトップアプリは作り始められます。最初の1本は10分で動く2章の入口で十分です。

Q. PythonでスマホアプリやWebサイトの見た目は作れますか?

不得意分野です(9章参照)。スマホはSwift/Kotlin、Webの見た目はHTML/CSS/JavaScriptが本流で、Pythonは裏側を担当します。目的がスマホアプリなら、最初から別の言語を選ぶ方が近道です。

Q. 仕事で一番役立つのはどの目的ですか?

多くの人にとっては仕事の自動化(3章)です。プログラマーでない職種でも、自分の繰り返し作業を自動化できると効果を即実感でき、職場でも重宝されます。中でもファイル整理は標準ライブラリだけで書けるため、追加インストールを避けたい環境でも始められます。

Q. AI・機械学習をやりたい場合もPythonでいいですか?

はい、この分野はPythonがデファクトスタンダードです。主要ライブラリもAI APIの公式SDKも、Pythonが最も充実しています(7章参照)。

Q. 複数の目的を同時に進めてもいいですか?

最初は1つに絞るのをおすすめします。目的ごとに使うライブラリが違うため、同時に手を出すとどれも中途半端になりがちです。まず画面のある道具で「プログラムを完成させる体力」を付け、そこから興味のある目的へ枝分かれする方が、結果的に早く形になります。

本記事は、生成AIを活用して下書きし、運営者が内容を確認・編集したうえで公開しています。AIの利用方針は免責事項をご覧ください。