Python文字列のstartswith()とendswith()メソッドによる接頭辞・接尾辞の判定

この記事では、Pythonの文字列が特定の部分文字列で始まるか、または終わるかを判定する**startswith()endswith()**メソッドについて解説します。


目次

startswith()メソッド

startswith()メソッドは、文字列が指定された**接頭辞(prefix)**で始まるかどうかを判定します。始まる場合はTrueを、そうでない場合はFalseを返します。

この判定は大文字と小文字を区別します

file_name = "image_001.jpg"

# "image" で始まるか
print(file_name.startswith("image")) # 出力: True

# "Image" (大文字) で始まるか
print(file_name.startswith("Image")) # 出力: False

# "001" で始まるか
print(file_name.startswith("001"))   # 出力: False

endswith()メソッド

endswith()メソッドは、文字列が指定された**接尾辞(suffix)**で終わるかどうかを判定します。終わる場合はTrueを、そうでない場合はFalseを返します。

こちらも大文字と小文字を区別します

file_name = "document_final.pdf"

# ".pdf" で終わるか
print(file_name.endswith(".pdf")) # 出力: True

# ".PDF" (大文字) で終わるか
print(file_name.endswith(".PDF")) # 出力: False

# "final" で終わるか
print(file_name.endswith("final"))# 出力: False

実用例

これらのメソッドは、特定の種類のデータをフィルタリングする際に非常に役立ちます。例えば、URLが安全なプロトコルで始まっているか、あるいはファイルが特定の拡張子を持っているかを確認するような場面で活用できます。

url = "https://example.com"

if url.startswith("https://"):
    print("安全な接続です。")
else:
    print("安全でない接続の可能性があります。")

files = ["data.csv", "report.docx", "archive.zip", "notes.csv"]
csv_files = []
for file in files:
    if file.endswith(".csv"):
        csv_files.append(file)

print(f"CSVファイル: {csv_files}") # 出力: CSVファイル: ['data.csv', 'notes.csv']

まとめ

  • startswith(): 文字列が指定した部分文字列で始まるかを判定します。
  • endswith(): 文字列が指定した部分文字列で終わるかを判定します。
  • どちらのメソッドも、大文字と小文字を厳密に区別します。
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次