Pythonで文字の位置を取得するにはどうすればいいですか? 質問する

Pythonで文字の位置を取得するにはどうすればいいですか? 質問する

Python で文字列内の文字の位置を取得するにはどうすればよいですか?

ベストアンサー1

find()これには 2 つの文字列メソッド、と がありますindex()。この 2 つの違いは、検索文字列が見つからない場合に何が起こるかです。find()は を返し-1index()を発生させますValueError

使用find()

>>> myString = 'Position of a character'
>>> myString.find('s')
2
>>> myString.find('x')
-1

使用index()

>>> myString = 'Position of a character'
>>> myString.index('s')
2
>>> myString.index('x')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found

からPython マニュアル

string.find(s, sub[, start[, end]])
s内で部分文字列subが見つかった場合の最小のインデックスを返します。この場合、 sub は sに完全に含まれることになりますs[start:end]失敗した場合は を返します。startとend-1のデフォルトと負の値の解釈はスライスの場合と同じです。

そして:

string.index(s, sub[, start[, end]])
同様ですfind()が、ValueError部分文字列が見つからない場合に例外が発生します。

おすすめ記事