On Feb 28, 12:40 pm, [EMAIL PROTECTED] wrote: > I'm a bit embarrassed to have to ask for help on this, but I'm not finding > the solution in the docs I have here. > > Data are assembled for writing to a database table. A representative tuple > looks like this: > > ('eco', "(u'Roads',)", 0.073969887301348305) > > Pysqlite doesn't like the format of the middle term: > pysqlite2.dbapi2.InterfaceError: Error binding parameter 1 - probably > unsupported type. > > I want to extract the 'Roads', part from the double-quoted enclosing > tuple.
(snipped) Perhaps something like: >>> t = ('eco', "(u'Roads',)", 0.073969887301348305) >>> t2 = eval(t[1], { '__builtins__' : {} }, {} ) >>> t2 (u'Roads',) >>> t2[0].encode('ascii') 'Roads' >>> import itertools >>> tuple(itertools.chain((t[0], t2[0].encode('ascii')), t[2:])) ('eco', 'Roads', 0.073969887301348305) >>> tuple(itertools.chain((t[0], (t2[0].encode('ascii'),)), t[2:])) ('eco', ('Roads',), 0.073969887301348305) -- Hope this helps, Steven -- http://mail.python.org/mailman/listinfo/python-list