[Python] 99の表を表示するプログラムの書き方を解説

Pythonで九九の表を表示するプログラムは、二重のforループを使用して簡単に作成できます。外側のループは1から9までの数を、内側のループも同様に1から9までの数を反復します。

各ループの中で、掛け算の結果を計算し、print関数を用いて表示します。print関数のendパラメータを調整することで、結果を整然とした表形式で出力することが可能です。

この方法により、九九の表を簡潔に表示することができます。

この記事でわかること
  • Pythonで99の表を作成する基本的な方法
  • 出力を見やすくするためのフォーマット調整
  • Tkinterを使ったGUIアプリの作成方法
  • 99の表をテキストファイルやCSVファイルに保存する方法
  • Flaskを使ったWebアプリケーションでの表示方法

目次から探す

Pythonで99の表を作成する方法

基本的な方法

forループを使った方法

Pythonで99の表を作成する基本的な方法は、forループを使用することです。

forループを使うことで、1から9までの数字を繰り返し処理し、掛け算の結果を表示することができます。

以下はそのサンプルコードです。

for i in range(1, 10):
    for j in range(1, 10):
        print(i * j, end=' ')
    print()

このコードを実行すると、1から9までの掛け算の結果が行ごとに表示されます。

end=' 'を指定することで、同じ行に結果を表示し、print()を使って行を区切っています。

1 2 3 4 5 6 7 8 9 
2 4 6 8 10 12 14 16 18 
3 6 9 12 15 18 21 24 27 
4 8 12 16 20 24 28 32 36 
5 10 15 20 25 30 35 40 45 
6 12 18 24 30 36 42 48 54 
7 14 21 28 35 42 49 56 63 
8 16 24 32 40 48 56 64 72 
9 18 27 36 45 54 63 72 81

ネストされたforループの使い方

99の表を作成するためには、ネストされたforループを使用します。

外側のループが行を、内側のループが列を担当します。

これにより、各行に対して1から9までの掛け算を行うことができます。

上記のコードがその例です。

print関数の使い方

print関数は、Pythonで出力を行うための基本的な関数です。

print()を使うことで、計算結果やメッセージをコンソールに表示できます。

endパラメータを使うことで、出力の形式を調整することが可能です。

例えば、end=' 'を指定すると、出力が同じ行に続きます。

これにより、99の表を整然と表示することができます。

完成したコード

以下は、99の表を表示するための完成したコードです。

for i in range(1, 10):
    for j in range(1, 10):
        print(i * j, end=' ')
    print()

このコードを実行すると、1から9までの掛け算の結果が整然とした形で表示されます。

各行は1から9の掛け算の結果を示しており、見やすく整理されています。

99の表を見やすくする工夫

フォーマットの調整

タブやスペースの使い方

99の表を見やすくするためには、出力のフォーマットを調整することが重要です。

タブやスペースを使うことで、各列を整然と揃えることができます。

以下は、スペースを使って出力を整えるサンプルコードです。

for i in range(1, 10):
    for j in range(1, 10):
        print(f"{i * j:2}", end=' ')
    print()

このコードでは、f-stringを使って各数値を2桁で表示しています。

これにより、出力が整然とし、見やすくなります。

f-stringを使ったフォーマット

Python 3.6以降では、f-stringを使うことで、変数を簡単に埋め込むことができます。

99の表を表示する際に、f-stringを使うことで、数値のフォーマットを柔軟に調整できます。

以下はその例です。

for i in range(1, 10):
    for j in range(1, 10):
        print(f"{i * j:2}", end=' ')
    print()

このコードでは、{i * j:2}の部分で、数値を2桁で表示するように指定しています。

これにより、出力が整然とし、視認性が向上します。

列の揃え方

99の表を見やすくするためには、列を揃えることが重要です。

数値の桁数が異なると、出力が乱れて見えることがあります。

f-stringstr.format()を使って、列を揃えることができます。

以下は、f-stringを使った例です。

for i in range(1, 10):
    for j in range(1, 10):
        print(f"{i * j:3}", end=' ')
    print()

このコードでは、{i * j:3}を使って、数値を3桁で表示しています。

これにより、各列が揃い、見やすい出力になります。

str.format()メソッドの活用

str.format()メソッドを使うことで、出力のフォーマットを柔軟に調整できます。

以下は、str.format()を使った99の表の表示例です。

for i in range(1, 10):
    for j in range(1, 10):
        print("{:2}".format(i * j), end=' ')
    print()

このコードでは、"{:2}".format(i * j)を使って、数値を2桁で表示しています。

これにより、出力が整然とし、視認性が向上します。

rjust()やljust()メソッドの使い方

rjust()ljust()メソッドを使うことで、文字列の右寄せや左寄せを行うことができます。

これを利用して、99の表を見やすく整えることができます。

以下はその例です。

for i in range(1, 10):
    for j in range(1, 10):
        print(str(i * j).rjust(3), end=' ')
    print()

このコードでは、str(i * j).rjust(3)を使って、数値を3桁で右寄せしています。

これにより、各列が揃い、見やすい出力になります。

ljust()を使うことで、左寄せにすることも可能です。

応用例

GUIを使った99の表の表示

Tkinterを使った簡単なGUIアプリ

Pythonの標準ライブラリであるTkinterを使って、99の表を表示する簡単なGUIアプリを作成できます。

以下はそのサンプルコードです。

import tkinter as tk
def create_multiplication_table():
    table = ""
    for i in range(1, 10):
        for j in range(1, 10):
            table += f"{i * j:2} "
        table += "\n"
    return table
root = tk.Tk()
root.title("99の表")
text = tk.Text(root, width=20, height=10)
text.pack()
text.insert(tk.END, create_multiplication_table())
root.mainloop()

このコードを実行すると、99の表が表示されたウィンドウが開きます。

Textウィジェットを使って、計算結果を表示しています。

GUIでの出力方法

Tkinterを使ったGUIアプリでは、TextウィジェットやLabelウィジェットを使って出力を行います。

上記の例では、Textウィジェットを使用して99の表を表示しています。

insertメソッドを使って、計算結果をウィジェットに挿入しています。

これにより、ユーザーは視覚的に99の表を確認できます。

ファイルに保存する方法

テキストファイルへの保存

99の表をテキストファイルに保存することも可能です。

以下はそのサンプルコードです。

with open("multiplication_table.txt", "w") as file:
    for i in range(1, 10):
        for j in range(1, 10):
            file.write(f"{i * j:2} ")
        file.write("\n")

このコードを実行すると、multiplication_table.txtというファイルに99の表が保存されます。

writeメソッドを使って、計算結果をファイルに書き込んでいます。

CSVファイルへの保存

99の表をCSVファイルに保存することもできます。

以下はそのサンプルコードです。

import csv
with open("multiplication_table.csv", "w", newline='') as file:
    writer = csv.writer(file)
    for i in range(1, 10):
        row = [i * j for j in range(1, 10)]
        writer.writerow(row)

このコードを実行すると、multiplication_table.csvというファイルに99の表がCSV形式で保存されます。

csv.writerを使って、行ごとにデータを保存しています。

Webアプリケーションでの表示

Flaskを使ったWebアプリケーション

Flaskを使って、99の表を表示するWebアプリケーションを作成することができます。

以下はそのサンプルコードです。

from flask import Flask, render_template_string
app = Flask(__name__)
@app.route('/')
def index():
    table = ""
    for i in range(1, 10):
        for j in range(1, 10):
            table += f"{i * j:2} "
        table += "<br>"
    return render_template_string("<pre>" + table + "</pre>")
if __name__ == '__main__':
    app.run(debug=True)

このコードを実行すると、Webブラウザで99の表が表示されます。

実行時のアクセス例

render_template_stringを使って、HTML形式で出力しています。

HTMLと連携した表示方法

Flaskを使ったWebアプリケーションでは、HTMLと連携して出力を行います。

上記の例では、<pre>タグを使って、99の表を整然と表示しています。

HTMLのスタイルを使うことで、さらに見やすくカスタマイズすることも可能です。

CSSを使って、フォントや色を変更することもできます。

よくある質問

ループの回数を変更するには?

ループの回数を変更するには、range()関数の引数を変更します。

例えば、99の表を10×10にしたい場合は、range(1, 11)に変更します。

出力をカスタマイズする方法は?

出力をカスタマイズするには、print()関数endsepパラメータを利用したり、f-stringstr.format()メソッドを使ってフォーマットを調整します。

例えば、数値を右寄せしたり、特定の文字で区切ったりすることができます。

エラーが出た場合の対処法は?

エラーが出た場合は、エラーメッセージをよく読み、どの行で何が問題かを確認します。

一般的なエラーには、インデントエラーやタイプミスが含まれます。

エラーの内容に応じて、コードを修正することが重要です。

また、Pythonの公式ドキュメントやコミュニティフォーラムを参照することも役立ちます。

まとめ

この記事では、Pythonを使って99の表を作成する方法や、その出力を見やすくする工夫、応用例について解説しました。

基本的なループの使い方から、GUIアプリやWebアプリケーションへの応用、ファイルへの保存方法まで幅広くカバーしました。

ぜひ、実際にコードを試してみて、Pythonの楽しさを体験してみてください。

  • URLをコピーしました!
目次から探す