Pythonで文字列から空白を削除する際によく使用される`strip()`メソッドについて、実践的な使い方を解説します。
strip()メソッドの基本
`strip()`メソッドは、文字列の先頭と末尾から空白文字(スペース、タブ、改行など)を削除するPythonの組み込みメソッドです。
text = " Hello World! "
result = text.strip()
print(result) # 出力: "Hello World!"主な特徴
- 文字列の両端から空白を削除
- 元の文字列は変更されず、新しい文字列を返す
- 文字列中間の空白は削除されない
よく使うパターン
1. 基本的な空白削除
# 通常の空白を削除
text = " Python Programming "
cleaned = text.strip()
print(cleaned) # 出力: "Python Programming"
# 改行を含む文字列の処理
text = "\n\nPython\n\n"
cleaned = text.strip()
print(cleaned) # 出力: "Python"2. 特定の文字を削除
`strip()`メソッドは引数として文字を指定することで、その文字を両端から削除できます。
# 特定の文字を削除
text = "###Python###"
cleaned = text.strip('#')
print(cleaned) # 出力: "Python"
# 複数の文字を指定
text = "...###Python###..."
cleaned = text.strip('.#')
print(cleaned) # 出力: "Python"3. 片側のみの削除
- `lstrip()`: 左側(先頭)のみ削除
- `rstrip()`: 右側(末尾)のみ削除
text = " Python "
left_cleaned = text.lstrip() # 左側の空白のみ削除
right_cleaned = text.rstrip() # 右側の空白のみ削除
print(left_cleaned) # 出力: "Python "
print(right_cleaned) # 出力: " Python"実践的な使用例
ファイルから読み込んだデータの処理
with open('sample.txt', 'r') as file:
lines = [line.strip() for line in file]ユーザー入力の処理
user_input = input("名前を入力してください: ").strip()CSVデータの前処理
csv_data = [
" name,age ",
" John, 25 ",
" Jane, 30 "
]
cleaned_data = [line.strip() for line in csv_data]注意点
1. 文字列の中間にある空白は削除されません
2. 元の文字列は変更されず、新しい文字列が返されます
3. 空文字列に対して使用しても安全です
まとめ
`strip()`メソッドは文字列処理において非常に便利なツールです。主な用途は:
- フォームからの入力データのクリーニング
- ファイルから読み込んだテキストの整形
- データ前処理での不要な文字の削除
適切に使用することで、より信頼性の高いデータ処理が可能になります。