我已经尝试了所有我能找到的解决方案,但似乎没有任何效果:
teext = str(self.tableWidget.item(row, col).text())
顺便说一句,我用希腊文写...
显然,self.tableWidget.item().text()
返回 Unicode,而您需要改用该decode
方法:
self.tableWidget.item(row, col).text().encode('utf8')
您真的很想查看Python Unicode HOWTO以充分了解 unicode 对象和它的字节编码之间的区别。
另一篇优秀的文章是Joel Spolsky(Stack Overflow 背后的人之一)的 The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses! )。
尝试将以下代码放在开头
它完美地解决了我的问题
import sys
reload(sys)
sys.setdefaultencoding('utf8')
teext = self.tableWidget.item(row, col).text().decode('utf-8')
将“utf-8”替换为您的文本编码