UnicodeEncodeError:'ascii'编解码器无法编码0-6位的字符:序数不在范围内(128)

Ant*_*040 4 python ascii encode pyqt

我已经尝试了所有可以找到的解决方案,但似乎没有任何效果:

teext = str(self.tableWidget.item(row, col).text())
Run Code Online (Sandbox Code Playgroud)

我顺便写一下希腊文...

Mar*_*ers 12

显然,self.tableWidget.item().text()返回Unicode,您需要使用该decode方法:

self.tableWidget.item(row, col).text().encode('utf8')
Run Code Online (Sandbox Code Playgroud)

您真的想要查看Python Unicode HOWTO以充分理解unicode对象与其字节编码之间的区别.

另一篇优秀的文章是Joel Spolsky(Stack Overflow背后的人之一)绝对必须知道关于Unicode和字符集(没有借口!)的绝对最低每个软件开发人员.