1. はじめに|Pythonで九九を作ってみよう!
こんにちは!この記事では、Pythonというプログラミング言語を使って「九九(くく)」を自動で作る方法をやさしく解説していきます。
九九っていうと、小学校で習った「1×1=1」から始まる掛け算の表ですよね。みなさんも一度は暗記したことがあると思います。でも、もしその九九を自分でプログラムで作れたら…ちょっとワクワクしませんか?
Pythonを使えば、たった数行のコードで九九を一気に表示させることができます。しかも、ただ表示するだけじゃなくて、キレイに並べて出力したり、保存したり、他の使い方にも応用できるんです!
この記事では、こんな人にぴったりの内容になっています:
- Pythonをこれから勉強しようと思っている初心者さん
- プログラミングの練習問題を探している学生さん
- for文やprintの使い方を覚えたい方
プログラミングって難しそう…って思うかもしれませんが、大丈夫!
九九のような身近な例を使って、楽しくコードを書いていきましょう。
2. 九九ってなに?まずは基本を確認しよう
さて、Pythonで九九を作る前に、「九九」そのものについてちょっとだけおさらいしておきましょう。
九九(くく)とは、日本の小学校で習う掛け算の基本表のことです。
1から9までの数字を使って、
1×1 = 1
1×2 = 2
1×3 = 3
…
9×9 = 81
というように、全部で81個の掛け算のパターンが並んでいます。
これを覚えることで、買い物の計算や、数学の問題を早く解けるようになります。
九九の特徴
- 1×1 から 9×9 までの掛け算
- 表のように整列していると見やすい
- 同じ数字の組み合わせ(例:3×4 と 4×3)は、結果は同じになる
この九九、手で書いて覚えるのも大事ですが、コンピューターに作らせてみると、もっと楽しく学べるんです!
Pythonなら、「繰り返し処理(for文)」を使って、九九を一気に自動生成することができます。
しかも、表示の仕方を工夫すれば、表みたいにキレイに整えて出力することも可能です。
では、次の章ではその「繰り返し処理(for文)」について、基本からわかりやすく解説していきます!
3. Pythonで九九を作るための基本構文
さて、いよいよPythonで九九を作る準備に入っていきましょう!
九九を自動で作るために使うのが、**「繰り返し処理(くりかえししょり)」です。
Pythonではこの繰り返し処理にfor文(フォーぶん)**という命令を使います。
for文ってなに?
for文は、「何回も同じような処理をするとき」に使う魔法のような道具です。
たとえば、1から9までの数字を順番に取り出して、ひとつずつ表示したいときはこう書きます:
for i in range(1, 10):
print(i)
このコードの意味は、
- 「1から9までの数字を、順番に
iという名前の箱に入れて」 - 「そのたびに
print(i)で中身を表示してね」
という感じです。
九九に必要な「入れ子のfor文」
九九は「1×1」から「9×9」までの掛け算を全部表示するので、**「縦の数」と「横の数」**の2つを組み合わせて計算します。
そのために使うのが、「入れ子(ねこ)になったfor文」。
つまり、for文の中にもうひとつfor文を入れる書き方です。
イメージとしてはこうです👇
for i in range(1, 10): # 縦のループ(1〜9)
for j in range(1, 10): # 横のループ(1〜9)
print(i * j)
このコードでは、
- 外側の
iが1のとき、内側のjが1〜9まで繰り返されて「1×1, 1×2, …, 1×9」が計算されます。 iが2になったらまた内側のjが1〜9まで繰り返されて、「2×1, 2×2, …, 2×9」が計算される…という流れになります。

これで九九のすべての組み合わせを自動で出力できるようになります!
4. 九九を自動生成するPythonコード例
では、いよいよ実際にPythonで九九を作ってみるプログラムを見てみましょう!
まずはこちらが基本のコードです👇
for i in range(1, 10):
for j in range(1, 10):
print(f"{i} × {j} = {i * j}")
これだけで、九九の81個の掛け算をすべて表示できます!
ひとつずつ説明していきますね。
🔍 コードの解説
for i in range(1, 10):
iは縦の数字(1〜9)を表しています。range(1, 10)と書くと、「1から9まで」の数が順番に出てきます(※10は含まれません)。
for j in range(1, 10):
jは横の数字(1〜9)。- この行は、
iの中に入れ子(ネスト)になっているので、「iが1のとき、jを1〜9まで回す」という流れになります。
print(f"{i} × {j} = {i * j}")
f"{…}"はf文字列という書き方で、{}の中に変数や計算式を入れると、自動的にその結果を文字列にしてくれます。- たとえば、
i=3,j=4のとき、この行は3 × 4 = 12と表示されます。
🧪 実行するとこんなふうに出力されます:
1 × 1 = 1
1 × 2 = 2
1 × 3 = 3
...
9 × 9 = 81
とてもシンプルで見やすいですよね!
しかもたった3行のコードで、こんなにたくさんの掛け算を作れるのは、プログラミングならではの面白さです✨

次は、この九九の表示をもっと見やすく整える方法を紹介します!
「表っぽく横に並べたいな〜」という人にもピッタリなテクニックを紹介するので、ぜひお楽しみに!
4. 九九を自動生成するPythonコード例
では、いよいよ実際にPythonで九九を作ってみるプログラムを見てみましょう!
まずはこちらが基本のコードです👇
for i in range(1, 10):
for j in range(1, 10):
print(f"{i} × {j} = {i * j}")
これだけで、九九の81個の掛け算をすべて表示できます!
ひとつずつ説明していきますね。
🔍 コードの解説
for i in range(1, 10):
iは縦の数字(1〜9)を表しています。range(1, 10)と書くと、「1から9まで」の数が順番に出てきます(※10は含まれません)。
for j in range(1, 10):
jは横の数字(1〜9)。- この行は、
iの中に入れ子(ネスト)になっているので、「iが1のとき、jを1〜9まで回す」という流れになります。
print(f"{i} × {j} = {i * j}")
f"{…}"はf文字列という書き方で、{}の中に変数や計算式を入れると、自動的にその結果を文字列にしてくれます。- たとえば、
i=3,j=4のとき、この行は3 × 4 = 12と表示されます。
🧪 実行するとこんなふうに出力されます:
1 × 1 = 1
1 × 2 = 2
1 × 3 = 3
...
9 × 9 = 81
とてもシンプルで見やすいですよね!
しかもたった3行のコードで、こんなにたくさんの掛け算を作れるのは、プログラミングならではの面白さです✨

次は、この九九の表示をもっと見やすく整える方法を紹介します!
「表っぽく横に並べたいな〜」という人にもピッタリなテクニックを紹介するので、ぜひお楽しみに!
6. 発展編|九九の結果をリストや辞書に格納してみよう
ここまでで、Pythonで九九を表示する方法はバッチリですね!
でも実は、**表示するだけじゃなくて「保存してあとで使う」**っていう方法もあるんです。
そこで今回は、九九の結果をリスト(配列)や辞書(じしょ)というデータの入れ物に入れて使う方法を紹介します!
🔸リストに九九の結果を入れてみよう
リストは、データを順番に並べて保存できる「箱」のようなものです。
kuku_list = []
for i in range(1, 10):
for j in range(1, 10):
kuku_list.append(f"{i}×{j}={i * j}")
# 確認してみよう
for line in kuku_list:
print(line)
📝 このコードの流れ:
- 空のリスト
kuku_listを作る - 九九の計算結果を
append()で1つずつ追加 - 最後にfor文で1つずつ取り出して表示
🔹辞書に九九の結果を入れるには?
辞書(dictionary)は、「キー」と「値」のセットでデータを保存します。
九九では、たとえば「(2,3) → 6」という形で保存できます。
kuku_dict = {}
for i in range(1, 10):
for j in range(1, 10):
kuku_dict[(i, j)] = i * j
# 例:3×4の結果を表示してみる
print("3×4 =", kuku_dict[(3, 4)])
📌 このコードのポイント:
kuku_dict[(i, j)]で (i, j) の組み合わせをキーに使っている- 値(value)は計算結果(i * j)
- 取り出すときは
辞書名[キー]の形でアクセス
🧠 どんなときに使うの?
- 九九をあとで検索したいとき(例:ユーザーが入力した「5×6」の答えを出す)
- GUIやWebアプリで九九表を表示するとき
- ファイルに保存したり、クイズにしたりする応用ができる!
✅ まとめ
| 方法 | メリット | Pythonの機能 |
|---|---|---|
| リスト | 全部を順番に保存 | append()で追加 |
| 辞書 | キーを指定して取り出せる | key: value で管理 |

次は、ここまで学んだ内容をふりかえりつつ、学習のポイントをギュッとまとめていきます!
「ここまでで、けっこうPythonわかってきたかも!」と思えるはずですよ😊
7. まとめ
ここまで、Pythonを使って九九を作る方法をいっしょに学んできましたね!
最初は「プログラミングってむずかしそう…」と思ったかもしれませんが、実際に手を動かしてみると意外とシンプルだったと思いませんか?
✅ 今回の学びをおさらいしよう!
| 学んだこと | ポイント |
|---|---|
for文の使い方 | 繰り返し処理で九九を自動化! |
ネスト(入れ子)のfor文 | 2重のループで縦×横の組み合わせ |
print()の工夫 | end= や f文字列 で見やすく表示 |
| リスト・辞書の使い方 | データを保存してあとから使えるように |
九九はただの掛け算の表だけど、プログラミングの基本がたくさん詰まっている題材なんです。
しかも、見た目を整えたり、データとして使ったり、工夫しだいでいろんな応用ができるのも面白いところ。
🎓 これからもっとレベルアップしたい人へ!
もし今回の九九プログラムが「楽しかった!」「もっとやってみたい!」と思えたなら、次はこんなチャレンジもおすすめです:
- ユーザーが好きな数字を入力できる「インタラクティブ九九」
- 3の段だけ、5の段だけ表示するプログラム
- 結果をファイルに保存してみる
- GUI(画面付き)アプリにしてみる(Tkinterなど)

Pythonは、小さな一歩からでも大きく広がっていく言語です。
九九から始めたあなたも、これからいろんなことが作れるようになりますよ!
次のチャレンジも、いっしょに楽しんでいきましょう😊
よくある質問(Q&A)
- QPythonの九九プログラムはどこで実行すればいいですか?
- A
初心者の方には、Pythonが最初から入っている「IDLE」や、無料で使える「Google Colab」がおすすめです。
Google Colabならブラウザだけで使えるので、インストールなしですぐ試せますよ!
- Q九九の範囲を1〜9以外にも変えられますか?
- A
はい、
range(1, 10)の数字を変えれば、たとえばrange(1, 13)にして「12×12」までの掛け算にすることもできます!
- Q表示の順番を逆にするにはどうすればいい?
- A
range()の中を逆順にすることで可能です。たとえば:for i in range(9, 0, -1):
for j in range(9, 0, -1):
print(f"{i} × {j} = {i * j}")こうすると、「9×9」から「1×1」までの順番で表示されます。







※当サイトはアフィリエイト広告を利用しています。リンクを経由して商品を購入された場合、当サイトに報酬が発生することがあります。
※本記事に記載しているAmazon商品情報(価格、在庫状況、割引、配送条件など)は、執筆時点のAmazon.co.jp上の情報に基づいています。
最新の価格・在庫・配送条件などの詳細は、Amazonの商品ページをご確認ください。