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
Python3. よく使う文字列メソッドと使い方
初心者がまず覚えておくと便利なメソッドを、
使い方・結果・練習例付きで紹介します。
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)
Python5. まとめ
| メソッド | 意味 | 例 |
|---|---|---|
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"
