2017-10-20 19 views
-1

J'essaie de mettre l'ensemble de données iris dans une liste mais quand j'essaie de lire les lignes dans le fichier, il ne sépare pas chaque valeur et la place dans 1 chaîne . comment puis-je résoudre ce problème afin qu'il ouvre et sépare les données? certaines des données:python: les fichiers csv ne placent pas les données dans une liste

sepal_length,sepal_width,petal_length,petal_width,species 
5.1,3.5,1.4,0.2,setosa 
4.9,3.0,1.4,0.2,setosa 
4.7,3.2,1.3,0.2,setosa 
4.6,3.1,1.5,0.2,setosa 
5.0,3.6,1.4,0.2,setosa 
5.4,3.9,1.7,0.4,setosa 
4.6,3.4,1.4,0.3,setosa 

Code:

import csv 

with open("iris.csv", "r") as csv_iris: 
    read = csv.reader(csv_iris, delimiter = ",") 

    for line in csv_iris: 
     print(line[0]) 

sortie:

s 
5 
4 
4 
4 
5 
5 
4 

ce que la sortie doit être:

sepal_length 
5.1 
4.9 
4.7 
4.6 
5.0 
5.4 
+2

Vous devriez itérez l'objet 'read' (lecteur de csv). 'pour ligne en lecture' –

Répondre

1

Vous avez été itérez le fichier plutôt que le csv reade r. Cela a provoqué l'impression du premier caractère de chaque ligne.

import csv 

with open("iris.csv", "r") as csv_iris: 
    read = csv.reader(csv_iris, delimiter = ",")  
    for line in read: 
     print(line[0]) 
0

Je commente l'erreur

with open('iris.csv','r') as csv_iris: 
    read = csv.reader(csv_iris,delimiter=',') 
#Instead of calling for read, you called for csv_iris 
    for line in read: 
     print(line[0])