【Python】TypeError: string indices must be integers, not str

こんにちは suganoo です。

Pythonでまた似たようなエラーが出たので備忘として書いておきます。

このエラーなんだっけなと基本的なものなのにたまにど忘れしてしまいました。

TypeError: string indices must be integers, not str

stringのインデックス型でintで指定するところstringで指定してるよ。
っといった意味です。

わかりやすいサンプルコードを書いてみます。

str1 = "Hello World!"

print str1
print str1[:2]
print str1["hoge"]
Hello World!
He
Traceback (most recent call last):
  File "stringindices.py", line 6, in <module>
    print str1["hoge"]
TypeError: string indices must be integers, not str

インデックスは数値でアクセスしなければならないのに、文字列を指定してみるとこんなエラーがでます。

参考にしてみてください。
blog.suganoo.net