0

だから私はこのビットのコードを持っています:

Points = [ [400,100],[600,100],[800,100] , [300,300],[400,300],[500,300],[600,300] ,         [200,500],[400,500],[600,500],[800,500],[1000,500] , [300,700],[500,700][700,700][900,700] , [200,900],[400,900],[600,900] ]

そして、それはこのエラーを生成します:

  line 43, in <module>
    Points = [ [400,100],[600,100],[800,100] , [300,300],[400,300],[500,300],[600,300] , [200,500],[400,500],[600,500],[800,500],[1000,500] , [300,700],[500,700][700,700][900,700] , [200,900],[400,900],[600,900] ]
TypeError: list indices must be integers, not tuple

修正するにはどうすればよいですか?

4

3 に答える 3

3

コンマを 2 つ忘れました:

[500,700][700,700][900,700]

(700, 700)ここで、Python はタプルを使用して左側のリストにインデックスを付けようとする試みを認識します。

>>> [500,700][700,700]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: list indices must be integers, not tuple

2 番目[900, 700]の「リスト」でも同じ問題が発生しますが、まだ問題は発生していません。

次の間にコンマを追加して修正します。

[500, 700], [700, 700], [900, 700]

または、完全なリストとして:

 Points = [[400, 100], [600, 100], [800, 100], [300, 300], [400, 300], [500, 300], [600, 300], [200, 500], [400, 500], [600, 500], [800, 500], [1000, 500], [300, 700], [500, 700], [700, 700], [900, 700], [200, 900], [400, 900], [600, 900]]
于 2013-08-13T16:28:42.897 に答える
2

各リスト (外側のリスト内) を次のように区切る必要があります,

Points = [ [400,100],[600,100],[800,100] , [300,300],[400,300],[500,300],[600,300] ,[200,500],[400,500],[600,500],[800,500],[1000,500] , [300,700],[500,700],[700,700],[900,700] , [200,900],[400,900],[600,900] ]
于 2013-08-13T16:30:29.327 に答える
2

コンマでいくつか区切るのを忘れました。修正を参照してください。

>>> Points = [[400,100], [600,100], [800,100], [300,300], [400,300], [500,300], [600,300] ,[200,500], [400,500], [600,500], [800,500], [1000,500], [300,700], [500,700], [700,700],[900,700], [200,900], [400,900], [600,900]]

コンマを忘れると、Python は最初のリストに 2 番目のリストにアクセスしようとしていると認識し、エラーをスローします。

于 2013-08-13T16:28:43.100 に答える