ゼロからプログラマーになるために!【入出力とファイル操作編:5-2】基本的な出力のフォーマット

program

プログラムから出力されるデータを見やすい形に整えることは、ユーザーが情報を理解しやすくするために重要です。この章では、Pythonでの基本的な出力のフォーマットについて学びます。フォーマットを駆使して、整ったレポートやテーブル形式の出力を作成できるようになりましょう。


出力フォーマットとは?

出力フォーマットとは、データをわかりやすい形で表示するための方法です。Pythonでは、文字列を整形するためのさまざまな手法が用意されています。


主なフォーマット方法

  1. print() 関数と文字列連結
  2. f-string(フォーマット文字列)
  3. str.format() メソッド
  4. パディング(幅指定)や配置

基本的な出力方法

print() 関数と文字列連結

最も基本的な方法は、print() 関数を使った文字列連結です。

例:文字列と変数の連結

name = "太郎"
age = 25
print("名前: " + name + ", 年齢: " + str(age))

実行結果

名前: 太郎, 年齢: 25

f-string(フォーマット文字列)

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

例:f-stringの使用

name = "太郎"
age = 25
print(f"名前: {name}, 年齢: {age}")

実行結果

名前: 太郎, 年齢: 25

利点

  • シンプルで読みやすい。
  • 表現力が豊かで、計算や関数呼び出しも埋め込める。
print(f"次の年齢: {age + 1}")

str.format() メソッド

str.format() メソッドを使用してフォーマットを整える方法も一般的です。

例:str.format() を使ったフォーマット

name = "太郎"
age = 25
print("名前: {}, 年齢: {}".format(name, age))

実行結果

名前: 太郎, 年齢: 25

フォーマットの応用:テーブル形式の出力

複数のデータを整理して表示する際には、テーブル形式の出力が便利です。Pythonでは、フォーマット指定を活用して列幅を揃えることができます。


パディング(幅指定)と配置

  • パディング:列幅を指定して文字列を揃える。
  • 配置:左揃え、右揃え、中央揃えを指定可能。

例:幅指定と配置

print(f"{'名前':<10}{'年齢':>5}")
print(f"{'太郎':<10}{25:>5}")
print(f"{'花子':<10}{30:>5}")

実行結果

名前            年齢
太郎 25
花子 30

tabulate ライブラリを使ったテーブル出力

Pythonの tabulate ライブラリを使うと、簡単に整形されたテーブルを作成できます。

インストール

pip install tabulate

例:tabulate を使ったテーブル出力

from tabulate import tabulate

data = [
["太郎", 25],
["花子", 30],
["次郎", 22]
]
headers = ["名前", "年齢"]
print(tabulate(data, headers, tablefmt="grid"))

実行結果

+------+------+
| 名前 | 年齢 |
+------+------+
| 太郎 | 25 |
| 花子 | 30 |
| 次郎 | 22 |
+------+------+

実践例

例1:売上データのレポート

sales = [
{"商品名": "りんご", "単価": 100, "数量": 3},
{"商品名": "バナナ", "単価": 50, "数量": 5},
{"商品名": "オレンジ", "単価": 80, "数量": 2}
]

print(f"{'商品名':<10}{'単価':>5}{'数量':>5}{'小計':>8}")
for item in sales:
subtotal = item["単価"] * item["数量"]
print(f"{item['商品名']:<10}{item['単価']:>5}{item['数量']:>5}{subtotal:>8}")

実行結果

商品名           単価    数量      小計
りんご 100 3 300
バナナ 50 5 250
オレンジ 80 2 160

図解:出力フォーマットの流れ

データの準備

フォーマット指定

f-string / str.format() / ライブラリ使用

整形された出力

まとめ

  • print() 関数 を使って、簡単な出力が可能。
  • f-string を活用すると、簡潔で柔軟なフォーマットが可能。
  • テーブル形式の出力 では、パディングや配置を活用すると見やすくなる。
  • tabulate ライブラリ で、整形されたテーブルを簡単に作成できる。

プログラムの出力を整えることで、ユーザーにとってわかりやすい情報提供が可能になります。


次のステップ:テキストファイルの読み書き

次回は、「テキストファイルの読み書き」 を学びます。ユーザーのデータを保存したり、外部データをプログラムで利用する方法をマスターして、プログラムの実用性をさらに高めましょう!

コメント

タイトルとURLをコピーしました
//投稿内コードにコピー表示 //コピー表示ここまで