[Tutor] Converting from unicode to nonstring
Peter Otten
__peter__ at web.de
Fri Oct 15 14:36:07 CEST 2010
David Hutto wrote:
> Hey Buddy Pals,
?
> I receive the following output from a sqlite db
>
> (u'graph1', u'Line', u'222', u'BLUE', u'1,2,3,4', u'True', u'0,5,0,10')
How did the string u"1,2,3,4" get into the database in the first place?
The sqlite3 module offers a mechanism to convert data from and to Python
(semi-)transparently:
import sqlite3
import json
sqlite3.register_adapter(list, json.dumps)
sqlite3.register_converter("list", json.loads)
db = sqlite3.connect(":memory:", detect_types=sqlite3.PARSE_DECLTYPES)
cursor = db.cursor()
cursor.execute("create table data (value list)")
cursor.execute("insert into data values (?)", ([11,22,33],))
for row in cursor.execute("select value from data"):
print row
See also:
http://docs.python.org/library/sqlite3.html#converting-sqlite-values-to-
custom-python-types
Peter
More information about the Tutor
mailing list