J'utiliser StringIO
:
try:
# for Python 2.x
from StringIO import StringIO
except ImportError:
# for Python 3.x
from io import StringIO
import csv
scsv = """text,with,Polish,non-Latin,lettes
1,2,3,4,5,6
a,b,c,d,e,f
gęś,zółty,wąż,idzie,wąską,dróżką,
"""
f = StringIO(scsv)
reader = csv.reader(f, delimiter=',')
for row in reader:
print('\t'.join(row))
version simplier avec split()
sur les nouvelles lignes:
reader = csv.reader(scsv.split('\n'), delimiter=',')
for row in reader:
print('\t'.join(row))
Ou vous pouvez simplement split()
cette chaîne en lignes en utilisant \n
comme séparateur, puis split()
chaque ligne en valeurs, mais de cette façon, vous devez être conscient de la citation, donc en utilisant le module csv
est préférable.
La méthode split ne fonctionnerait pas si son fichier CSV contenait des chaînes contenant des virgules contenant –
ou des chaînes entre guillemets sous forme de valeurs (avec ou sans virgules) – adamk
Python 3 utilise maintenant io.StringIO. (Espérons que les utilisateurs de Python 3 auront un peu de temps). alors, importez io et io.StringIO. – JStrahl