|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Oct 2005
Messaggi: 130
|
[Python] funzione translate
ciao,
volevo migliorare questo script che utilizzo per convertire, dentro un file di testo, le lettere accentate nei corrispettivi equivalenti in codice html Codice:
out = open("pagina.html","w") line = line.translate(maketrans("èéàòù","")) for line in open("pagina.txt"): if line.strip(): line = line.strip() line = line.replace("è","è") line = line.replace("é","é") line = line.replace("à","à") line = line.replace("ù","ù") line = line.replace("ò","ò") line = line.replace("ì","ì") #line = line.replace("\"",""") out.write("<p>" + line + "</p>" + "\n\n") out.close() il mio problema è che devo sostituire un carattere con una stringa e non posso usare questo metodo per creare una tabella valida, posso usare in qualche modo un dizionario? conoscete un modo per fare le tabelle? ps: uso python 2.6 |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2003
Messaggi: 591
|
Qui spiega come fare per costruire le tabella richieste da quel metodo.
Non mi sembra che quel metodo faccia al caso tuo comunque, si può usare solo per sostiture caratteri della stessa lunghezza. Ah, attento perchè credo che nel codice che hai scritto sovrascrivi continuamente il file, dovresti appendere le linee nel file out.html aprendolo in modalità "b", non "w". |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
|
Quote:
Codice:
def replace(s, d): for key, value in d.items(): s = s.replace(key, value) return s replace_dict = {'è' : 'è', ...} html = replace(html, replace_dict)
__________________
In a world without fences, who needs Gates? Power by: Fedora 8 - Mac OS X 10.4.11 |
|
![]() |
![]() |
![]() |
#4 | |
Member
Iscritto dal: Oct 2005
Messaggi: 130
|
Quote:
grazie a tutti siete stati gentili. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:30.