Bonjour à tous,

Je programme actuellement des macros en python pour un logiciel. Dans ce cadre, j'aurai besoin de transférer des listes d'une macro à une autre. J'ai essayé :

DANS L'UNE DES MACROS (qui contient lesdites listes)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
f = open("fichier de stockage de variable", 'w+')
f.write ([str(nveh), str(nop), str(ntype)] + '\n')    # [str(nveh), str(nop), str(ntype)] est la liste de str à déplacer...
f.close()
DANS L'AUTRE MACRO (qui doit utiliser lesdites listes)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
f = open("fichier de stockage de variables", 'r')
maliste = f.readlines ()
f.close()
# La question de suppression du retour chariot ne me pose pas de soucis...
J'avai l'impression que ca marchait car si je fait un print de ce que je récupère, j'obtiens qqchose qui ressemble beaucoup à uner liste " [str(nveh), str(nop), str(ntype)] " mais en fait, il ne s'agit pas d'une liste mais d'une str qui contient notament des crochets, des caractères et des virgules... bref, pas une liste!
Alors j'ai un million de question mais en gros :
1- Y a-t-il un moyen plus cohérent de transporter une liste (dictionnaire?)
2- Y a-t-il moyen de lui dire qu'il doit récupérer une données liste (en gros, caster ce qu'il va récupérer)
3- tranformer ma str (qui ressemble beaucoup à une liste) en vraie liste.
Merci d'avance à ceux qui répondront,

Frédéric