Python入門①:テキストファイルを読み込んで行数を数える

Parser

〜Timing Report処理の第一歩〜

📝 はじめに

Synopsys PrimeTimeなどでTiming Reportを出力すると、数千行にもなるテキストファイルが生成されます。
これをExcelやgrepで整理するのは大変ですよね。

実は、Pythonの基礎さえあればレポートの自動処理が可能です。
今回の記事では、その第一歩として「テキストファイルを読み込み、行数と文字数を数えるスクリプト」を作成します。


🖥 環境準備

  • Python 3.x(公式サイトまたはAnacondaでインストール)
  • エディタ:VS Code / PyCharm / Jupyter Notebook など好みでOK
  • サンプルファイル:timing_sample.rpt(適当なテキストでOK)

✍️ コード例

以下のコードを count_lines.py という名前で保存して実行してみましょう。

#count_lines.py
#ファイルを開いて行数と文字数を数えるスクリプト
with open("timing_sample.rpt", "r", encoding="utf-8") as f:
    text = f.read()

#行数を数える
line_count = text.count("\n") + 1

#文字数を数える
char_count = len(text)

print("行数:", line_count)
print("文字数:", char_count)

▶️ 実行方法

ターミナル(またはコマンドプロンプト)で次のコマンドを入力します。

python count_lines.py

出力例:

行数: 124
文字数: 5870

🔍 解説

  • open("timing_sample.rpt", "r")
    → ファイルを「読み込みモード」で開きます
  • f.read()
    → ファイルの中身をすべて文字列として読み込みます
  • len(text)
    → 読み込んだ文字列の長さ(=文字数)を返します
  • text.count("\n") + 1
    → 改行の数を数えて行数を求めます

これで、「レポートが何行あるか」「どれくらいの文字量か」を自動で調べられるようになりました。


💡 応用ポイント

  • 巨大なレポートでも一瞬で集計可能
  • Excelやgrepでは難しい「文字数カウント」もすぐにできる
  • 今後の解析の土台になる
タイトルとURLをコピーしました