Python - 文字列位置(Index)を探す

文字列でどの文字のインデックスを探したいときに使用できる方法を紹介します。

1. find() 関数で文字列でインデックスを検索する

String.find(ch) 関数は String から ch の Index を返します。文字が存在しない場合は-1を返します。

str = "Hello, World"
ch = 'W'

index = str.find(ch)
if index != -1:
    print(f"Found '{ch}', index: {index}")
else:
    print("Not found")

Output:

Found 'W', index: 7

2. index() 関数で文字列からインデックスを検索する

String.index(ch) は String から ch の Index を返します。文字が存在しない場合、ValueErrorエラーが発生します。 そのため、try-except として処理する必要があります。

str = "Hello, World"
ch = 'W'

try:
    index = str.index(ch)
    print(f"Found '{ch}', index: {index}")
except:
    print("Not found")

Output:

Found 'W', index: 7

try-exceptなしで存在しない文字を見つけようとすると、 ValueErrorが発生してプログラムが終了します。

str = "Hello, World"
index = str.index('a')

Output:

Traceback (most recent call last):
  File "/home/mj/IdeaProjects/python-ex/ex1.py", line 23, in <module>
    index = str.index('a')
ValueError: substring not found

Related Posts

codechachaCopyright ©2019 codechacha