Python | 文字列メソッド

Python
スポンサーリンク

1. 「メソッド」ってなに?

Pythonでは、文字列や数値などのデータには、それぞれ「便利な操作」がくっついています。
その「くっついた関数」のことを メソッド(method) と呼びます。

🔹 形はこうです:

データ.メソッド名(引数)
Python

たとえば:

name = "halu"
print(name.upper())  # 結果 → HALU
Python
  • "halu" は文字列データ(str 型)
  • .upper() は「全部大文字にする」メソッド
  • 実行すると "HALU" という新しい文字列を返します

🧩 ポイント:

  • メソッドは「データにくっついた関数」
  • データ.メソッド名() の形で使う
  • 元のデータ(name)は 変わらない!

2. 文字列は「変更できない(immutable)」!

Pythonの文字列は、一度作ると中身を直接変えることができません。
だから .upper().replace() を使っても、元の文字列は変わらず
「変換後の新しい文字列」が戻り値として返されます。

text = "hello"
text.upper()
print(text)   # → "hello" のまま
Python

変換結果を使いたいときは、新しい変数に代入しましょう:

text = "hello"
new_text = text.upper()
print(new_text)  # → HELLO
Python

3. よく使う文字列メソッドと使い方

初心者がまず覚えておくと便利なメソッドを、
使い方・結果・練習例付きで紹介します。


upper():大文字に変換

s = "python"
print(s.upper())
Python

➡ 出力:

PYTHON

🔸 英字をすべて大文字に変えたいときに使います。
ログやIDなどを統一したいときにも便利です。


lower():小文字に変換

s = "HELLO WORLD"
print(s.lower())
Python

➡ 出力:

hello world

🔸 ユーザーの入力を比較するときなど、
大文字・小文字を区別せずに扱いたい場合に使います。


replace(old, new):文字の置き換え

s = "I like cats"
print(s.replace("cats", "dogs"))
Python

➡ 出力:

I like dogs

🔸 "cats""dogs" に置き換えました。
メールテンプレートや文章の置換にも便利。


strip():前後の空白を削除

s = "   hello   "
print(s.strip())
Python

➡ 出力:

hello

🔸 ユーザー入力の前後にスペースがあるときに使います。
lstrip()(左だけ)や rstrip()(右だけ)もあります。


find(substring):文字列の中を検索

s = "apple banana orange"
print(s.find("banana"))
print(s.find("grape"))
Python

➡ 出力:

6
-1

🔸 "banana" は6文字目から始まるので 6、
見つからなければ -1 が返ります。


split(sep):区切り文字で分割

s = "apple,banana,orange"
print(s.split(","))
Python

➡ 出力:

['apple', 'banana', 'orange']

🔸 CSVデータやリスト形式の文字列を分割するのに使います。


join(list):リストを文字列にくっつける

fruits = ["apple", "banana", "orange"]
print(", ".join(fruits))
Python

➡ 出力:

apple, banana, orange

🔸 split() の逆。
複数の文字列をまとめたいときに便利です。


startswith()・endswith(): 特定の文字で始まる/終わるか?

file = "report.csv"
print(file.endswith(".csv"))   # True
print(file.startswith("rep"))  # True
Python

🔸 ファイル名チェックなどでよく使います。


len()(メソッドではないが重要)

s = "hello"
print(len(s))
Python

➡ 出力:

5

🔸 文字数を数えます(スペースも含む!)


4. 例題で練習してみよう!


例題1:名前の大文字化

ユーザーに名前を入力してもらい、
すべて大文字で出力するプログラムを書いてみましょう。

name = input("あなたの名前を入力してください:")
print("大文字にすると →", name.upper())
Python

例題2:単語の置き換え

文章の中の「Python」を「Pyhton3」に置き換えます。

text = "I love Python"
print(text.replace("Python", "Python3"))
Python

例題3:メールアドレスの前後空白を削除

email = "  user@example.com  "
clean = email.strip()
print("入力されたメール:", clean)
Python

例題4:カンマ区切りをリストに変換

data = "apple,banana,orange"
fruits = data.split(",")
print(fruits)
Python

5. まとめ

メソッド意味
upper()大文字に変換"abc".upper()"ABC"
lower()小文字に変換"ABC".lower()"abc"
replace(a,b)文字を置換"cat".replace("c","b")"bat"
strip()前後の空白除去" hi ".strip()"hi"
split(",")区切り文字で分割"a,b".split(",")["a","b"]
" ".join(list)リストを結合" ".join(["a","b"])"a b"
find("x")位置を調べる"text".find("x")2
startswith()〜で始まる?"file.txt".startswith("f")
endswith()〜で終わる?"file.txt".endswith(".txt")

6. チャレンジ問題

初心者向けミニクイズです(解答もすぐ下にあります)

Q1.

msg = " Hello Python "
print(msg.strip().upper())
Python

出力は?

答え: "HELLO PYTHON"


Q2.

path = "C:/Users/Halu/report.csv"
print(path.endswith(".csv"))
Python

答え: True


Q3.

s = "apple,banana,orange"
print("-".join(s.split(",")))
Python

答え: "apple-banana-orange"

Python
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました