[PyQt] Comparing QString with QChar
Mark Summerfield
mark at qtrac.eu
Fri Jun 27 16:57:27 BST 2008
On 2008-06-27, Phil Thompson wrote:
> On Fri, 27 Jun 2008 09:38:04 +0100, Mark Summerfield <mark at qtrac.eu> wrote:
> > Hi,
> >
> > I got caught by this today:
> > >>> from PyQt4.QtCore import *
> > >>> s = QString("X")
> > >>> c = QChar("X")
> > >>> s[0] == c
> >
> > False
> >
> > >>> s[0] == QString(c)
> >
> > True
> >
> > In C++/Qt if you do the s[0] == c comparison it will return true because
> > operator[] returns a const QChar &, but in PyQt4 s[0] is still a
> > QString---which makes sense because in Python a char is just a str of
> > length 1, but maybe this particular case could be handled more
> > intuitively?
>
> By allowing a QChar whenever a QString is expected?
Seems reasonable given that Python doesn't make the char/str
distinction.
Of course what would be really nice is to say something like:
from __future__ import native_str
to help get rid of QString usage. (I _like_ QString, but I just find the
Qt Jambi solution so much better;-)
--
Mark Summerfield, Qtrac Ltd., www.qtrac.eu
More information about the PyQt
mailing list