Pythonでの空行の削除について:How to Delete Blank Lines in Python

Pythonでの空行の削除について:How to Delete Blank Lines in Python

Pythonでの空行の削除

Pythonを使用してテキストデータやリストから空行を削除する方法について解説します。 空行を削除することで、データを整形したり、余分な情報を排除したりできます。

1. ファイル内の空行を削除

ファイルから空行を削除する場合、以下のコードを使用します。

with open("input.txt", "r", encoding="utf-8") as infile, open("output.txt", "w", encoding="utf-8") as outfile:
    for line in infile:
        # 空行でない行だけを書き出す
        if line.strip():  # strip()で空白や改行を削除
            outfile.write(line)
    

上記のコードでは、line.strip()を使用して空行を判定し、空行でない行のみを出力ファイルに書き込みます。

2. リストから空行を削除

リスト形式のデータから空行を削除する場合の例です。

# サンプルデータ
lines = ["line 1", "\n", "line 2", "", "line 3"]

# 空行を削除
filtered_lines = [line for line in lines if line.strip()]

print(filtered_lines)
# 出力: ['line 1', 'line 2', 'line 3']
    

このコードではリスト内包表記を使用して、空行(line.strip()が空でない行)をフィルタリングしています。

3. 空行削除のポイント

  • strip(): 行頭と行末の空白や改行を削除します。
  • 条件式: if line.strip()のように条件を設定して空行を除外します。
  • 入力データのエンコーディング: ファイルを操作する場合はエンコーディング(例: UTF-8)に注意してください。

まとめ

Pythonを使用すると、ファイルやリスト内の空行を簡単に削除できます。 strip()や内包表記を活用することで、効率的にデータを整形することが可能です。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です