[PyQt] Comparing QString with QChar
Phil Thompson
phil at riverbankcomputing.com
Fri Jun 27 18:51:59 BST 2008
On Fri, 27 Jun 2008 16:57:27 +0100, Mark Summerfield <mark at qtrac.eu> wrote:
> 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.
Done in tonight's snapshot.
> 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;-)
Phil
More information about the PyQt
mailing list