Float python

Fermé
m_722 Messages postés 1 Date d'inscription jeudi 30 avril 2020 Statut Membre Dernière intervention 1 mai 2020 - 1 mai 2020 à 15:15
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 - 4 mai 2020 à 16:14
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

Utilisateur anonyme
1 mai 2020 à 15:25
Bonjour
En python, il y a une chose primordiale => l’indentation.

Tu as essayé d’utiliser les balises de codes, mais pas comme il faut.
Voici un petit tuto sur leur bonne utilisation https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Tu as encore le temps de modifier ton message
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
Modifié le 1 mai 2020 à 15:26
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 ?
0
Oui oui, il me manque plus que a faire le float mais je n'y parvient toujours pas avec de nombreux essaie
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
1 mai 2020 à 15:30
donc tu peux fermer l'appel précédent en le marquant comme "résolu" … :-)
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
4 mai 2020 à 12:23
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]

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
4 mai 2020 à 16:14
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]
0