2017-06-07 14 views
0

私は最近、Pythonの探索を始めましたが、これをコード化する方法を見つけられないようです。私は修正がかなり簡単だと思っています。誰か助けてくれますか?Python3 - TypeError:リストインデックスは、strではなく整数またはスライスでなければなりません。リスト

temp = 0 
for i in list[::-1]: 
    temp = temp + 1.11 
    list[i].append("{0:.2f}".format(temp)) 
+1

が** **変数名として 'list'を使用しないでください行う必要があります。組み込みの 'list'関数をシャドウします。 forループは、リスト*の*要素を繰り返し処理します。インデックスが必要な場合は、 'range'を使います。あなたのリストにあるものはどれでも、少なくとも1つの要素は 'str'です。そして、あなたはそれをインデックスとして使用しようとします。したがって、エラー –

+0

イテレータ' i'はコンテキスト内のインデックスではなく、 'list'他のリストのインデックスとしてリストを使用する、また、望ましい出力と入力は何ですか? – bhansa

+0

短いtemp + = 1.11を使用してください – Brian

答えて

0

すでにリスト項目がiであり、追加することができます。 list[i]は、リスト項目(これは別のリストだと思います)でインデックスを作成しており、インデックスを作成していません。

ので、代わりの

list[i].append("{0:.2f}".format(temp)) 

あなたは

i.append("{0:.2f}".format(temp)) 
関連する問題