求教PyQT的QString不被basestring分辨

求教PyQT的QString不被basestring识别
之前写了一个串口的程序,用的是PySide,工作很正常。。

现在把它改成了PyQt4的:结果串口打不开了,经过跟踪找到了问题:

程序里有一条:
COM.port = self.cmbCOMM.currentText()

代码就是在这里异常的,进一步跟踪进入currentText函数发现了问题的根源,这里面有下面这样一句话:
if isinstance(port, basestring)

这一句的作用是检查port是不是str或unicode类型,可是我发现port的类型竟然是QString


界面是使用QDesigner设计的,之前用PySide没有问题,这说明PySide把下拉列表的元素类型设置成了str或unicode;而现在PyQt4却把他们的类型设置成QString

请问,这个问题有没有简单的解决办法啊???难道我又要再转回到PySide吗???


我觉得这一点PyQt没有PySide做的好,,既然是在Python环境下使用,应该尽量使用Python的类型才对啊,,
PyQt QString

------解决方案--------------------
转换一下嘛,不知道这个有用不

str QString.__str__ (self)
unicode QString.__unicode__ (self)
------解决方案--------------------
保持与Qt兼容,貌似所有的字符串都是QString