Python
でリストから空文字列を削除するには、いくつかの方法があります。最も一般的なのはリスト内包表記やfilter()
関数を使う方法です。
リスト内包表記を使った削除
以下のコードはリスト内包表記を使って空文字列を削除する方法です。
strings = ["first", "", "second"]
cleaned = [x for x in strings if x]
print(cleaned) # 結果: ['first', 'second']
この方法は非常にシンプルで効率的です。if x
部分で空文字列をチェックし、True
の場合にのみリストに含めます。
filter関数を使う方法
filter()
関数を使うと、リストから空文字列を削除することもできます。None
を渡すと、空の要素が除外されます。
strings = ["first", "", "second"]
cleaned = list(filter(None, strings))
print(cleaned) # 結果: ['first', 'second']
空白のみの文字列を削除する方法
空白だけの文字列も削除したい場合は、str.strip
を使います。
strings = ["first", "", " ", "second"]
cleaned = list(filter(str.strip, strings))
print(cleaned) # 結果: ['first', 'second']
結論
リストから空文字列を削除するには、リスト内包表記が最もPython
icで読みやすい方法です。特定の要件がある場合は、filter()
やstr.strip
を組み合わせて柔軟に対応できます。