从字符串Python中去除商标符号
我正在为设计师准备一些数据。我正在用Windows机器上的python将数据从SQL Server中提取出来(不确定操作系统是否重要)。我如何制作'官方商标™'='官方商标'?此外,关于unicode或相关主题的任何进一步信息/阅读将帮助我变得更加独立。谢谢你的帮助!从字符串Python中去除商标符号
编辑:
也许我应该包括一些代码。我现在在运行时遇到这个错误:'UnicodeDecodeError:'ascii'编解码器无法解码位置2中的字节0x99:序号不在范围(128)中。这里是我的代码:
row.note = 'TM™ Data\n'
t = row.note
t = t.rstrip(os.linesep).lstrip(os.linesep)
t = t.replace(u"\u2122",'')
商标符号是Unicode字符U+2122
,或在Python符号u"\u2122"
。
只是做了搜索和替换:
'string'.replace(u"\u2122", '')
“(必须小心使用Unicode,因为打印时必须对其进行解码)”部分是误导性的,当Python认为您的终端只支持ascii时,您只需自己编码*。我认为出于某种原因在Windows上它确实如此。 –
当您打印Unicode时,Python会自动使用'sys.stdout.encoding'给出的编码对其进行编码。如果您的终端设置正确,那么应该是UTF-8或任何编码对您的语言有意义。否则,编码默认为ascii,打印非ASCII字符将失败。 –
搅拌机等都有答案,所以这里的一些阅读Unicode是如何在Python中表示:http://docs.python.org/howto /unicode.html#the-unicode-type – birryree
@birryree:感谢您的链接。 – Blender