Python | 文字列メソッド

Python
スポンサーリンク

では応用編の課題を続けます。複数の文字列メソッドを組み合わせて処理する練習です。


応用編(複数メソッドの組み合わせ)

課題 1: 電話番号の正規化

問題:
ユーザーが入力した電話番号(例: " 03- 1234-5678 ")の前後の空白や、ハイフンの前後の空白を取り除いて、正しい形式("03-1234-5678")に整えて表示してください。

解答例:

phone = input("電話番号を入力してください: ")
# 前後の空白を削除
clean = phone.strip()
# ハイフンの前後の余計な空白を削除
parts = [p.strip() for p in clean.split("-")]
normalized = "-".join(parts)
print("正規化された番号:", normalized)
Python

解説:

  • strip() で前後の空白を削除
  • split("-") でハイフン区切りに分割
  • 各部分を strip() で整える
  • join() で再びハイフンで結合

課題 2: ファイル拡張子チェック

問題:
ユーザーが入力したファイル名が .png または .jpg で終わるかを判定してください。大文字・小文字は区別しないようにしてください。

解答例:

filename = input("ファイル名を入力してください: ")
lowered = filename.lower().strip()
if lowered.endswith(".png") or lowered.endswith(".jpg"):
    print("画像ファイルです")
else:
    print("画像ファイルではありません")
Python

解説:

  • lower() で小文字に統一
  • strip() で余計な空白を削除
  • endswith() で拡張子を判定

課題 3: 単語カウント

問題:
ユーザーが入力した文章を単語ごとに分割し、単語数を表示してください。さらに "Python" が何回出てくるか数えてください。

解答例:

text = input("文章を入力してください: ")
words = text.split()
print("単語数:", len(words))
print("'Python' の出現回数:", text.count("Python"))
Python

解説:

  • split() で空白区切りに分割
  • len() で単語数を数える
  • count() で特定単語の出現回数を数える

課題 4: パスの整理

問題:
ユーザーが入力したパス(例: "///home///user///docs///") の前後のスラッシュを削除し、フォルダ名を " / " で結合して表示してください。

解答例:

path = input("パスを入力してください: ")
clean = path.strip("/")
parts = clean.split("/")
normalized = " / ".join(parts)
print("整理されたパス:", normalized)
Python

解説:

  • strip("/") で前後のスラッシュを削除
  • split("/") でフォルダごとに分割
  • " / ".join() で見やすく結合

これで「複数のメソッドを組み合わせて処理する」練習ができます。
次は「チャレンジ課題(自分で関数を作って再利用する)」に進めても面白いですよ。

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