What's the best/neatest way to get Unicode data from a database into a grid cell?
cl at isbd.net
cl at isbd.net
Mon Feb 8 05:22:22 EST 2016
Dietmar Schwertberger <maillist at schwertberger.de> wrote:
> On 07.02.2016 12:19, cl at isbd.net wrote:
> > However my database has quite a lot of Unicode data as there are
> > French (and other) names with accents etc. What's the right way to
> > handle this reasonably neatly? At the moment it traps an error at
> > line 37:-
> > self.SetCellValue(row_num, i, str(cells[i]))
> The unicode versions of wxPython should have no problems with handling
> unicode strings.
> The problem that you see here is that str(...) tries to convert your
> unicode data into a non-unicode string, which of course fails.
> Do something like:
>
> value = cells[i]
> if not isinstance(value, basestring):
> value = str(value)
> self.SetCellValue(row_num, i, value)
>
Thanks, worked perfectly! I had been trying to produce something
similar in tkinter but grids are a bit clumsy in tkinter. This wx
implementation will do me nicely.
> Once you switch to Python 3 and Phoenix you have to modify this
> slightly, e.g. by adding this to the top of your code:
>
> try:
> basestring
> except:
> basestring = (bytes,str)
>
Everything else is 3 compatible so moving should be fairly painless
if/when phoenix becomes available.
--
Chris Green
ยท
More information about the Python-list
mailing list