Grazie Carlos, Ho risolto!!!!
Il db è DB2/400 (iseries IBM) al quale mi attacco via pyodbc con il connettore nativo di IBM. L'sql è banale: c = dbase.open.iseries().cursor() # modulo che mi restituisce il cursore. s = "SELECT * FROM LIBRERIA.TABELLA" c.execute(sql) d = c.fetchall() A questo punto d contiene i dati che hai visto. Avevo tralasciato che la codifica su AS400 (iseries) e' EBCDIC e python sa cosa fare!: >>> s = bytearray(b'\xf1\xf5\xf0\xf1\xf2\xf3') >>> s.decode("cp1140").encode("ascii") '150123' https://docs.python.org/2/library/codecs.html Grazie lo stesso! Il giorno 28 gennaio 2015 10:44, Carlos Catucci <carlos.catu...@gmail.com> ha scritto: > > 2015-01-28 10:35 GMT+01:00 Riccardo Brazzale <riccardo.brazz...@gmail.com> > : > >> vi pongo la seguente questione: ho un' sql che reperisce dati da un >> database che li mette a disposizione in questo formato: >> >> bytearray(b'\xf1\xf5\xf0\xf1\xf2\xf3'), (bytearray(b'@@@@@@') >> >> Ora partiamo dal seguente assunto: >> >> Si tratta di un campo data che può essere valorizzato oppure vuoto. >> >> Nel primo caso la data e' "23/01/15" e nel secondo caso la data non è >> valorizzata. >> >> Come posso "normalizzare", rendere cioe' "human readable" i dati? >> >> Ho fatto vari esperimenti con struct, binascii ed altro senza venirne a >> capo. >> >> Semplicemente, potrei analizzare la stringa e dedurre i valori (se = xF1 >> allora 1, se XF4 allora 4, se @ allora vuoto) ma non piace a nessuno. > > > A naso direi che il prmo caso sia una codifica (suppongo utf-8, ma non ho > controllato). Il fatto che il vuoto sia riepito di '@' invece mi pare > strano. > Attendo che i guru si pronuncino, ma magari sapere altre cose sarebbe > utile: > > che db? > come ottieni il risultato? Un esempio di query (in python) sarebbe > opportuno > usi una connettore particolarper il db? > oppure un ORM? > > Carlos > -- > EZLN ... Para Todos Todo ... Nada para nosotros > > _______________________________________________ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > > -- Riccardo Brazzale
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python