Python 文字列の始め/終わりを確認する(startswith/endswith)

Pythonの文字列の始めまたは終わりを確認するサンプルです。
startswithメソッドとendswithメソッドを使用します。

確認環境
・Python 3.7.0

目次

startswithメソッド(引数1つ)

文字列.startswith(検索する文字列)
  • 文字列が指定した引数の検索する文字列で始まっていればtrueを返し、そうでない場合はfalseを返します。
  • 2つ目の引数の最初の1文字目の位置は0から始まります。
  • 以下はPython 3.6.5 ドキュメントのstartswithメソッドのリンクです。
    https://docs.python.jp/3/library/stdtypes.html#str.startswith

コード

startsWithメソッドのサンプルです。

# coding: utf-8

str1 = 'あいうえお'

print(str1.startswith('あいう')) # True

print(str1.startswith('あいえ')) # False

5行目は、文字列は指定した引数で始まっているのでtrueが返ります。
7行目は、文字列は指定した引数で始まっていないのでfalseが返ります。

 

startsWithメソッド(引数2つ)

文字列.startswith(検索する文字列 [,開始の位置 [終了の位置]])
  • 文字列が指定した引数で始まっていればtrueを返します。それ以外の場合はfalseを返します。
  • 2つ目の引数は比較を開始する位置です
  • 最初の1文字目の位置は0から始まります。
  • 以下はPython 3.6.5 ドキュメントのstartswithメソッドのリンクです。
    https://docs.python.jp/3/library/stdtypes.html#str.startswith

コード

startsWithメソッドの引数が2つあるサンプルです。

# coding: utf-8

str1 = 'あいうえお'

print(str1.startswith('あいう',0)) # True

print(str1.startswith('あいう',1)) # False

print(str1.startswith('いうえ',1)) # True

5行目は、2つ目の引数が0です。文字列の最初から比較します。trueです。
7行目は、2つ目の引数が1です。文字列の2文字目から比較します。falseになります。
9行目も、2つ目の引数が1です。今回は文字列の2文字目から比較するのでtrueになります。

 

endswithメソッド

文字列.endswith(検索する文字列 [,開始の位置 [終了の位置]])
  • 文字列が指定した引数の検索する文字列で終わっていればtrueを返し、そうでない場合はfalseを返します。
  • 2つ目の引数の最初の1文字目の位置は0から始まります。
  • 以下はPython 3.6.3 ドキュメントのendswithメソッドのリンクです。
    https://docs.python.jp/3/library/stdtypes.html#str.endswith

コード

endsWithメソッドのサンプルです。

# coding: utf-8

str1 = 'あいうえお'

print(str1.endswith('うえお')) # True

print(str1.endswith('うえか')) # False

5行目は、文字列は指定した引数で終わっているのでtrueが返ります。
7行目は、文字列は指定した引数で終わっていないのでfalseが返ります。

endswithメソッドの引数を3つ指定

endsWithメソッドの引数が3つあるサンプルです。

# coding: utf-8

str1 = 'あいうえお'

print(str1.endswith('うえお',0,5)) # True

print(str1.endswith('うえお',0,4)) # False

print(str1.endswith('うえお',2,5)) # True

print(str1.endswith('うえお',3,5)) # False

5行目の対象の文字列は(あいうえお)です。引数の(うえお)で終わっているのでtrueを返します。
7行目の対象の文字列は(あいうえ)です。引数の(うえお)で終わっていないのでfalseを返します。
9行目の対象の文字列は(うえお)です。引数の(うえお)で終わっているのでtrueを返します。
11行目の対象の文字列は(えお)です。引数の(うえお)で終わっていないのでfalseを返します。

関連の記事

Python 文字の位置を取得するサンプル(find/index)
Python 文字列を分割してリストにするサンプル(split)
Python 大文字と小文字を変換(upper/lower/capitalize/swapcase/title)
Python エスケープシーケンスとraw文字列のサンプル
Python 文字列の先頭と末尾を削除するサンプル(strip)

△上に戻る