Bonjour,

Je suis en train de mettre à jour un programme écrit en Python 2.7 vers Python 3.6.
Concernant la lecture/écriture de fichiers csv, je ne parviens plus à enregistrer une ligne identique à la chaine de données préparée.

Les données stockées dans les tableaux (T1_Arr[-1] , I1_Arr[-1] , etc...) étant des float , je réalise un cast en str(), puis j'applique une méthode .join pour formater la chaine à sauver.
Après test, la chaine ainsi préparée semble correspondre exactement à ce que je souhaite sauvegarder

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
maVar =(str(T1_Arr[-1]),str(I1_Arr[-1]),str(H1_Arr[-1]),str(P1_Arr[-1]))
maVar = ','.join(maVar)
print(type(maVar))
print (maVar)
<class 'str'>
19.0,-129.0,403.0,5.212673664
Mais le fichier csv généré n'est pas du tout conforme à ce que j'attendais... Chaque caractère composant "la phrase" est séparé d'une virgule...
1,9,.,0,",",-,1,3,2,.,0,",",4,0,3,.,0,",",5,.,2,1,2,6,7,3,6,6,4,"
Ci-dessous le code utilisé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
myFile = open(dataFileName,'a')
theWriter = csv.writer(myFile, dialect='excel')
maVar =(str(T1_Arr[-1]),str(I1_Arr[-1]),str(H1_Arr[-1]),str(P1_Arr[-1]))
maVar = ','.join(maVar))
theWriter.writerow(maVar)
Comment paramétrer l'écriture ou formater ma chaine de caractères afin de la sauvegarder dans un format 19.0,-129.0,403.0,5.212673664 (plus passage à la ligne) ?