Python printの応用術10選|改行制御からファイル出力まで一気に解説

コーディング

Pythonを学び始めたばかりの方も、すでに業務で使っている方も、「print関数なんて、ただ文字を表示するだけでしょ?」と思っていないだろうか。
実は、printデバッグからログ出力、整形表示、ファイル操作にまで幅広く応用できる奥深い関数だ。

この記事では、初心者が意外と知らないけど、知っておくと実務で差がつく10のprint活用術を、具体的なコードとともに解説していく。


1. 改行をなくす:endパラメータ

通常、printは末尾に自動で改行が入る。
しかし、end=''を使えば改行を防ぎ、文字列をつなげて表示できる。

print("こんにちは", end='')
print("世界!")
# 出力:こんにちは世界!

活用場面

  • プログレスバー表示
  • 同じ行に情報を連続出力

2. セパレータを変える:sepパラメータ

複数の要素を出力する際の区切り文字を変更できる。

print("2025", "08", "02", sep='-')
# 出力:2025-08-02

活用場面

  • 日付や時刻の整形
  • CSV形式の出力

3. ファイルへ出力:fileパラメータ

標準出力ではなく、ファイルに直接書き出すことも可能。

with open("log.txt", "w", encoding="utf-8") as f:
    print("ログ開始", file=f)

活用場面

  • ログファイル生成
  • エラーレポートの自動出力

4. 複数行出力:""" """の活用

複数行の文字列はトリプルクォートで記述可能。

print("""
=== アプリ使用方法 ===
1. メールアドレスを入力
2. パスワードを設定
3. ログイン
""")

活用場面

  • ユーザーガイド表示
  • CLIでのインストラクション提示

5. ANSIエスケープで色をつける

ターミナルでの出力をカラフルに強調表示するには、ANSIエスケープコードが便利。

print("3[91mエラーが発生しました3[0m")
色名コード例表示例
\033[91mエラー
\033[92m成功メッセージなど
\033[94m情報ログ

活用場面

  • CLIツールでのログレベル表示
  • エラーメッセージの視認性向上

6. オブジェクトをきれいに出力:pprintモジュール

辞書やリストなど複雑なデータ構造の整形表示には、pprintを使おう。

from pprint import pprint

data = {"user": "taro", "logs": [{"action": "login"}, {"action": "logout"}]}
pprint(data)

活用場面

  • デバッグ時の確認
  • APIレスポンスの可視化

7. 出力を一時的に無効化する

ログの抑制やテスト時にはprint一時的に無効化できる。

import sys
import os

sys.stdout = open(os.devnull, 'w')
print("これは表示されない")

活用場面

  • 単体テストでの出力制御
  • ノイズの多いログを一時停止

8. f-stringによる高度なフォーマット

Python3.6以降では、f-stringによる変数展開が便利。

name = "横井"
age = 28
print(f"{name}さんは{age}歳です")

活用場面

  • デバッグログ
  • 日本語と変数を組み合わせた出力

9. デバッグ専用:print(vars(obj))

クラスインスタンスの内部情報を出力するにはvars()が便利。

class User:
    def __init__(self, name, email):
        self.name = name
        self.email = email

user = User("taro", "taro@example.com")
print(vars(user))

活用場面

  • オブジェクトの中身確認
  • クラスの挙動チェック

10. デフォルトのprintを拡張する

独自の出力関数を作ることでロギングのような機能を組み込める。

def debug_print(msg):
    print(f"[DEBUG] {msg}")

debug_print("読み込み完了")

活用場面

  • カスタムログ形式の導入
  • チーム内の出力ルール統一

おまけ:出力内容をコピーしやすくするテク

ブログ記事やCLIツールでは、コードをそのままコピーできるように整える配慮も忘れずに。

  • 行頭に>>>$をつけない
  • エラーメッセージと正常出力を分ける
  • 出力例とコードをセットで見せる

まとめ:printは「表示」以上の価値がある

printは「ただ表示するだけ」の関数ではない。
ログ、デバッグ、ファイル出力、色付きメッセージ、整形表示など、工夫次第で活用範囲は無限大だ。

実務や学習中に「もっと見やすくしたい」「ログを残したい」と感じたとき、ぜひこの記事の内容を思い出してほしい。
日々の開発が、少し楽しく・効率的になるはずだ。

コメント

タイトルとURLをコピーしました