Supprimer les guillemets dans une liste
Bonjour,
Je m'essaie à Python et Pygame en développant un petit jeu de plateforme, mais je bute sur un problème incompréhensible : lorsque j'ouvre un fichier et récupère ses données, il me place des guillemets comme suit :
Citation:
>>> print(structure)
[['0', '0', '0', '0'], ['0', '0', '0', '0'], ['0', '1', '0', '1'], ['0', '1', '1', '1']]
alors que je voudrais :
Citation:
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 1, 0, 1], [0, 1, 1, 1]]
et alors que le contenu du fichier texte ("cartedujeu.txt") est le suivant :
Citation:
0000
0000
0101
0111
(je simplifie évidemment la map pour la clarté de l'exposé)
Voici le bout de code incriminé :
Code:
1 2 3 4 5 6 7 8 9 10
| structure = 0
with open("cartedujeu.txt", "r") as cartedujeu:
structure_cartedujeu = []
for ligne in cartedujeu:
ligne_map = []
for sprite in ligne:
if sprite != '\n':
ligne_map.append(sprite)
structure_cartedujeu.append(ligne_map)
structure = structure_cartedujeu |
Je suis convaincu que le problème vient de ce bout de code-là, car ça marche quand je définis moi-même la liste contenant les listes (en définissant la structure sans passer par un autre fichier) :
Code:
1 2 3 4 5 6
| structure = []
ligne1 = [0,0,0,0]
ligne2 = [0,0,0,0]
ligne3 = [0,1,0,1]
ligne4 = [0,1,1,1]
structure = [ligne1, ligne2, ligne3, ligne4] |
Vous y comprenez quelque chose ? Ça ne doit pas être sorcier mais je ne trouve nulle part l'explication sur internet (et je n'arrive pas à non plus à une solution bricolée en demandant de supprimer les guillemets).
Bien à tous,
JB