2017-07-30 8 views
-4

3つの独立したテストスコアを1つの配列に格納するコードを開発しています。それがエラーを思い付くテーブルベースのレイアウトの配列に関する問題:リストインデックスはstrではなく整数またはスライスでなければなりません

Results = [ 
     ["Names :", []] 
     ["Score 1:", []] 
     ["Score 2:", []] 
     ["Score 3:", []] 
     ["Mean :", []] 
     ] 

:ここのように私のコードが見えるものであるあなたは、トップレベルの間のカンマを配置する必要があり

+0

よしとして、辞書を使用する必要がありますか?そして?実際にこのエラーを生成するコードはどこにありますか? –

+0

@cᴏʟᴅsᴘᴇᴇᴅこれは、リスト項目がコンマで区切られていないため、エラーを生成するコードです。しかし、それがOPが本当に望む構造であるかどうかは明らかではありません。 – ayhan

答えて

1

を:「TypeError例外リストインデックスはstrを、整数またはスライスしてはなりません」あなたの構造内のリスト言い換えれば、使用

Results = [ 
    ["Names :", []], 
    ["Score 1:", []], 
    ["Score 2:", []], 
    ["Score 3:", []], 
    ["Mean :", []] 
] 

あなたのインデントは他の方法では理想的ではなかったので、これらの点も修正しました。要約すると、[1 2 3]のようなリストは正しくありません。あなたはコンマが必要です:[1, 2, 3]

これで、あなたのデータ構造は変わっているようです。あなたがキーとして文字列のいずれかを使用することにより、内側のリストにアクセスする場合は、そのよう

Results = { 
    "Names :": [], 
    "Score 1:": [], 
    "Score 2:": [], 
    "Score 3:": [], 
    "Mean :": [] 
} 

または多分

Results = { 
    "Names": [], 
    "Score 1": [], 
    "Score 2": [], 
    "Score 3": [], 
    "Mean": [] 
} 
関連する問題