Ecco un esempio che non quadra. Ora costruiamo la stinga se scrivo:
str = 'perché è così?' da quel che ho capito ho creato una stringa codificata con codifica microsoft "cp1252" giusto? per cui se, sempre da console, scrivo "str" e dò invio l'output è ascii (codifica di default di python) ed il risultato è: 'perch\x82 \x8a cos\x8d?' mentre se scrivo "print str" la scritta viene visualizzata come quando la digito perché l'output è microsoft per cui "cp1252" ok? Se invece volessi crearmi una stringa unicode dovrei utilizzare "unicode" specificando che l'input è "cp1252" ma se faccio così: "str=unicode('perché è così', 'cp1252')" mi da questo errore: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Python25\lib\encodings\cp1252.py", line 15, in decode return codecs.charmap_decode(input,errors,decoding_table) UnicodeDecodeError: 'charmap' codec can't decode byte 0x8d in position 12: character maps to <undefined> mentre se scrivo "str=unicode('perché è così', 'latin-1')" non da errore. Non ci sto capendo più nulla però. ora se ridigito da console "str" l'output sembra una stringa unicode: u'perch\x82 \x8a cos\x8d' ma se scrivo print str da questo errore nel file "cp850": Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Python25\lib\encodings\cp850.py", line 12, in encode return codecs.charmap_encode(input,errors,encoding_map) UnicodeEncodeError: 'charmap' codec can't encode character u'\x82' in position 5: character maps to <undefined> Mi sono perso anche nella spiegazione, latin-1, cp1252, cp850... non so più nemmeno cosa stavo chiedendo. Avete idea di qualche sito che spiega bene e semplicemente la codifica con python? Grazie Il 13/11/07, Cristian Re <[EMAIL PROTECTED]> ha scritto: > > ora non ho collegato il modem. quando provo ve lo giro. > Grazie > > > Il 13/11/07, Daniele Varrazzo <[EMAIL PROTECTED]> ha scritto: > > > > Cristian Re ha scritto: > > > In effetti il problema principale era sulla lettura di file che, se > > > contenevano caratteri non ascii, creavano problemi. Noi utilizzavamo > > la > > > open built-in di python. Il problema relativo al db era conseguente ma > > > credo che così si risolva. > > > > > > Un altro problema sulla codifica l'ho utilizzando Gammu per > > > interfacciarmi con dei modem GSM in quanto non riesco a gestire la > > > codifica degli SMS in ingresso se contengono caratteri accentati ma > > non > > > saprei quanti hanno mai provato ad utilizzare Gammu. > > > > > > Se qualcuno dovesse conoscere Gammu in pratica non riesco a gestire la > > > > > codifica del testo nella GetSMS della StateMachine. > > > > Ne so poco in effetti. > > > > Puoi mandarci un repr() di una stringa ottenuta da un SMS contenente > > caratteri > > accentati/simbolo euro/caratteri giapponesi? > > > > Se mi dai un numero di cellulare te lo mando io :) > > > > -- > > Daniele Varrazzo - Develer S.r.l. > > http://www.develer.com > > _______________________________________________ > > Python mailing list > > Python@lists.python.it > > http://lists.python.it/mailman/listinfo/python > > > >
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python