Pythonの文字列操作でよく使用される`capitalize()`メソッドについて、基本的な使い方から実践的な例まで詳しく解説します。
capitalize()メソッドの基本
`capitalize()`は文字列の先頭を大文字に、残りの文字を小文字に変換するPythonの組み込みメソッドです。
text = "hello world"
result = text.capitalize()
print(result) # Hello world主な特徴
1. 文字列の最初の文字のみを大文字に変換
2. 残りの文字はすべて小文字に変換
3. 元の文字列は変更せず、新しい文字列を返す
具体的な使用例
基本的な使用方法
name = "john DOE"
print(name.capitalize()) # John doe
sentence = "python IS awesome!"
print(sentence.capitalize()) # Python is awesome!数字や空白がある場合
# 数字から始まる場合
text1 = "123abc"
print(text1.capitalize()) # 123abc
# 空白から始まる場合
text2 = " hello"
print(text2.capitalize()) # " hello"よくある間違いと注意点
1. 文章の各単語を大文字にしたい場合
`capitalize()`は最初の文字のみを大文字にします。各単語の先頭を大文字にしたい場合は`title()`メソッドを使用します。
# 誤った使用
text = "hello world"
print(text.capitalize()) # Hello world
# 正しい使用(単語ごとに大文字化)
print(text.title()) # Hello World2. 元の文字列は変更されない
text = "hello world"
text.capitalize()
print(text) # hello world(元の文字列は変更されていない)
# 正しい使用
text = text.capitalize()
print(text) # Hello world実践的な使用例
ユーザー入力の整形
user_input = input("名前を入力してください: ").capitalize()
print(f"こんにちは、{user_input}さん")ファイル名の整形
filename = "test_file.txt"
formatted_name = filename.capitalize()
print(formatted_name) # Test_file.txtまとめ
- `capitalize()`は文字列の最初の文字のみを大文字に変換
- 残りの文字はすべて小文字になる
- 元の文字列は変更されない(新しい文字列を返す)
- 数字や空白から始まる場合は変更されない
- 各単語の先頭を大文字にしたい場合は`title()`を使用
このメソッドは、ユーザー入力の整形やテキストの標準化など、様々な場面で活用できます。