Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. import csv
  2. import os
  3.  
  4. buffer=[]
  5.  
  6.  
  7. def gestion_entree():
  8. file_input=input("\n > Insérer le nom du fichier CSV à convertir : ")
  9. if(os.path.isfile(file_input)==True):
  10. lire_entree(file_input)
  11. else:
  12. print("Erreur: fichier introuvable")
  13. exit(1)
  14.  
  15.  
  16. def gestion_sortie():
  17. file_output=input("\n > Insérer le nom du fichier CSV de sortie : ")
  18. creer_sortie(file_output)
  19.  
  20. def lire_entree(file_input):
  21. with open(file_input,newline='') as csvfile:
  22. lecteur = csv.DictReader(csvfile, delimiter='|')
  23. for line_content in lecteur:
  24. buffer.append(line_content)
  25.  
  26.  
  27.  
  28.  
  29. def creer_sortie(file_output):
  30. with open(file_output,'w',newline='') as csvfile:
  31. field_names=[
  32. 'adresse_titulaire','carroserie','catégorie','couleur','cylindree','date immatriculation',
  33. 'denomination','energie','nom_modele','immatriculation','marque','nom','places',
  34. 'poids','puissance',
  35. 'type','variante','version',
  36. 'vin'
  37. ]
  38. copieur = csv.DictWriter(csvfile, field_names,delimiter=";")
  39. copieur.writeheader()
  40. for row in buffer:
  41. liste_caract=row['type_variante_version'].split(', ')
  42. copieur.writerow({
  43. 'adresse_titulaire': row[lecteur.fieldnames[0]],
  44. 'carroserie': row[lecteur.fieldnames[1]],
  45. 'catégorie': row[lecteur.fieldnames[2]],
  46. 'couleur': row[lecteur.fieldnames[3]],
  47. 'cylindree': row[lecteur.fieldnames[4]],
  48. 'date immatriculation': row[lecteur.fieldnames[5]],
  49. 'denomination': row[lecteur.fieldnames[6]],
  50. 'energie': row[lecteur.fieldnames[7]],
  51. 'nom_modele': row[lecteur.fieldnames[8]],
  52. 'immatriculation': row[lecteur.fieldnames[9]],
  53. 'marque': row[lecteur.fieldnames[10]],
  54. 'nom': row[lecteur.fieldnames[11]],
  55. 'places': row[lecteur.fieldnames[12]],
  56. 'poids': row[lecteur.fieldnames[13]],
  57. 'puissance': row[lecteur.fieldnames[14]],
  58. 'type': liste_caract[0],
  59. 'variante': liste_caract[1],
  60. 'version': liste_caract[2],
  61. 'vin': row[lecteur.fieldnames[16]],
  62. })
  63.  
  64.  
  65. if __name__ == '__main__':
  66. gestion_entree()
  67. gestion_sortie()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement