Remplir un tableau bidimensionnel

Résolu
JulienJust Messages postés 149 Date d'inscription   Statut Membre Dernière intervention   -  
JulienJust Messages postés 149 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Suite à un projet basé sur l'utilisation de python, je souhaite créer puis remplir un tableau à plusieurs dimensions. L'idée, est de pouvoir lire un document, en récupérer des informations qu'il faut ensuite répertorier dans un tableau. J'ai commencé en répertoriant les infos par catégories grâce à des listes, et maintenant, comment les mettre dans LE tableau? Pourriez - vous m'aider?

Voici une partie du programme:

def TABLE(*dim):
table = []
if len(dim):
for i in range(dim[0]):
table += ['']
if len(dim) > 1: # si le tableau a plus d'une dimension...
table[i] = TABLE(*dim[1:]) # ... on traite la dimension suivante
return table


table = TABLE(len(id_closed),len(id_advanced_face))

i, j = 0, 0

for i in range(0, len(id_closed)):
table[i] = id_closed[i]
for j in range(0, len(id_advanced_face)):
table[i][j] = id_advanced_face[j]
j = j + 1
i = i + 1
print table

avec id_closed = ['#399', '#409', '#509', '#519']
id_advanced_face = ['#664, #665, #666, #667, #668, #669', '#671, #670, #675, #674, #676, #673', '#677, #672, #682, #681, #683, #680', '#679, #678, #662, #661, #660, #663']
A voir également:

2 réponses

gastroPode
 
Bonsoir,

je n'ai rien compris de ton code... sans les indentations, ça pique les yeux.

Pour remplir un tableau à deux dimensions, c'est remplir en fait une liste de listes.

Comme ceci :

maListe = [['une', 'liste'], ['deux', 'liste']]
elements = ['trois', 'element']
maListe.append(elements)


Ce qui donnera : [['une', 'liste'], ['deux', 'liste'], ['trois', 'element']]

Bonus :
Pour parcourir ce genre de liste, tu peux faire :

for sousListe in liste:
    for element in sousListe:
        print element
0
JulienJust Messages postés 149 Date d'inscription   Statut Membre Dernière intervention   18
 
Tu as raison, je n'avais pas remarqué que les indentations n'étaient pas passées.
Mais ta réponse me suffit.

Merci beaucoup!
0