3 votes

Comment puis-je enregistrer les résultats dans le fichier?

Actuellement, j'ai du mal à trouver une méthode pour enregistrer les résultats dans le fichier que j'ai fourni via mon sys.argv[1]. Je fournis un csv au script python.

Mon csv contient des données au format suivant

3/4/20

3/5/20

3/6/20

J'ai essayé d'utiliser append() mais je reçois des erreurs, j'ai également essayé d'utiliser write()

import sys

file = open(str(sys.argv[1])) #entrez le nom du chemin du csv, assurez-vous que le fichier contient uniquement les dates
for i in file:
    addedstring = (i.rstrip() +',09,00, 17')
    finalstring = addedstring.replace("20,", "2020,")

file.append(i)

Toute aide est grandement appréciée!

5voto

Johnny Mopp Points 6485

Une option consiste à mettre les chaînes modifiées dans une liste, puis fermer le fichier, le réouvrir en mode écriture et écrire la liste des chaînes modifiées :

finalstring = []
with open(sys.argv[1], "r") as file:
    for i in file:
        addedstring = (i.rstrip() +',09,00, 17')
        finalstring.append(addedstring.replace('20,', '2020,'))
with open(sys.argv[1], "w") as file:
    file.write('\n'.join(finalstring))

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X