Type error: 'type' object isn't subscriptable

Willi -  
mamiemando Messages postés 34195 Date d'inscription   Statut Modérateur Dernière intervention   -

Bonjour,

Pourriez-vous m'aider je suis sur calculatrice et je n'arrive pas à régler cette erreur voici mon script:

carte1 = [[0, 0, 0, 1, 2], [2, 1, 0, 0, 0]]
carte2 = [[3, 6, 3, 6, 2], [2, 1, 3, 0, 0]]
map = choice([carte1, carte2])

def maps():
    for j in range(5):
        for i in range(5):
            if map[j][i] == 0:
                fill_rect(i * 20, j * 20, 20, 20, (100, 20, 30))

maps()

Je suis sur calculatrice numworks avec le module Kandinsky

Merci :-)

A voir également:

1 réponse

yg_be Messages postés 24281 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 585
 

bonjour,

d'où vient choice()?

chez moi, ceci fonctionne:

import random
import kandinsky

carte1 = [[0, 0, 0, 1, 2], [2, 1, 0, 0, 0]]
carte2 = [[3, 6, 3, 6, 2], [2, 1, 3, 0, 0]]

map = random.choice([carte1,carte2])

def maps():
    for j in range(2):
        for i in range(5):
            if map[j][i] == 0:
                kandinsky.fill_rect(i * 20, j * 20, 20, 20, (100, 20, 30))

maps()
0
mamiemando Messages postés 34195 Date d'inscription   Statut Modérateur Dernière intervention   7 895
 

Ou :

from random import choice
from kandinsky import fill_rect

... ce qui permet de ne pas modifier le code initial.

Quoi qu'il en soit, vu que des import manquent, le code est vraisemblablement incomplet. De plus, dans le message initial, il serait intéressant d'avoir le message d'erreur complet (numéros de lignes inclus).

0