Hai provato a decodificare tutto come utf-8 utilizzano encode e decode?<br><br><div class="gmail_quote">Il giorno 21 giugno 2012 12:27, Daniele Zambelli <span dir="ltr"><<a href="mailto:daniele.zambelli@gmail.com" target="_blank">daniele.zambelli@gmail.com</a>></span> ha scritto:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Salve, devo modificare l'intestazione di un file csv.<br>
<br>
Il file originale è:<br>
<br>
"id","019 [E' la più ]","019 [Abbiamo]","019 [perché ci ]","019<br>
[Consigli di amici]"<br>
"3","NO","NO","NO","Sì"<br>
"4","NO","Sì","Sì","NO"<br>
<br>
vorrei:<br>
<br>
"id","E' la più ","Abbiamo","perché ci","019 [Consigli di amici]"<br>
"3","NO","NO","NO","Sì"<br>
"4","NO","Sì","Sì","NO"<br>
<br>
Il programma è i seguente:<br>
<br>
NFI = 'prova_orig.csv'<br>
NFO = 'prova_mod.csv'<br>
<br>
TRANSLATE_HEADER = {'''"019 [E' la più ]"''': '''"E' la più"''',<br>
'''"019 [Abbiamo]"''': '''"Abbiamo"''',<br>
'''"019 [perché ci ]"''': '''"perché ci"''',<br>
}<br>
for k, v in TRANSLATE_HEADER.items(): print(k, '-->', v)<br>
<br>
def mod_header(line):<br>
lline = line.split(',')<br>
# for s in lline: print(s)<br>
for i in range(len(lline)):<br>
print(lline[i])<br>
lline[i] = TRANSLATE_HEADER.get(lline[i], lline[i])<br>
print(lline[i])<br>
return(','.join(lline))<br>
<br>
fi = file(NFI)<br>
fo = file(NFO, 'w')<br>
oldtext = fi.readlines()<br>
fo.write(mod_header(oldtext.pop(0)))<br>
for line in oldtext:<br>
fo.write(line)<br>
fo.close()<br>
<br>
ma ottengo:<br>
<br>
"id","019 [E' la più ]","Abbiamo","019 [perché ci ]","019 [Consigli di amici]"<br>
"3","NO","NO","NO","Sì"<br>
"4","NO","Sì","Sì","NO"<br>
<br>
Cioè i campi che contengono lettere accentate non vengono cambiati. Ma<br>
se provo le stesse cose nella shell IDLE su stringhe non lette dal<br>
file sembra che funzioni...<br>
<br>
Qualche consiglio?<br>
<br>
Grazie<br>
<br>
--<br>
<br>
Daniele<br>
<br>
<a href="http://www.fugamatematica.blogspot.com" target="_blank">www.fugamatematica.blogspot.com</a><br>
<br>
giusto!<br>
nel verso<br>
forse è perché non guardiamo le cose<br>
Quando non ci capiamo,<br>
_______________________________________________<br>
Python mailing list<br>
<a href="mailto:Python@lists.python.it">Python@lists.python.it</a><br>
<a href="http://lists.python.it/mailman/listinfo/python" target="_blank">http://lists.python.it/mailman/listinfo/python</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>----------------------------------------------------------------------<br>Giuseppe Amato<br>e-mail: <a href="mailto:giuamato@gmail.com" target="_blank">giuamato@gmail.com</a><div style="padding:0px;margin-left:0px;margin-top:0px;overflow:hidden;word-wrap:break-word;color:black;font-size:10px;text-align:left;line-height:130%">
</div><br>