Float python

Bonjour,
Je souhaiterais convertir avec float ma fonction afin qu'elle donne [1.1,0.2...] et non [['1.4', '0.2', '0\n'], ['...]]. J'ai essayé de nombreuse reprise mais je sais vraiment pas comment m'y prendre.
merci d'avance

def construction (nom): # Construction de la liste de la collection

liste1=[]
with open(nom, encoding='utf8') as f:
entete = f.readline() # On purge la première ligne du fichier : l'en-tête.
for ligne in f:

champs = ligne.split(",") # Un tableau
liste1.append(champs)
print(liste1)

return(liste1)

liste=construction("iris.csv")

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour m_722,

    Tu as déjà posé cette même question dans ton appel précédent "liste avec fichier csv' du 30 avril à 22h23, non ?
    1. Oui oui, il me manque plus que a faire le float mais je n'y parvient toujours pas avec de nombreux essaie
  2. donc tu peux fermer l'appel précédent en le marquant comme "résolu" … :-)
    1. Bonjour m_722,

      Moi, je ferais une autre liste:

      liste_1 = ['0.0','1.5','2.2']
      liste_2 = [float(el) for el in liste_1]
      
      
      1. Au fait, pour ne pas avoir \n dans liste_1, on peut tronquer la ligne d'abord:
        (ligne du début jusqu'à 1 caractère en moins à partir de la fin)

        for ligne in f: 
            ligne = ligne[:-1]