如何比较Python中包含反斜杠的两个字符串

时间:2016-05-06 20:05:17

标签: python string ocr

我正在使用Python的模块ocr,一些图像返回此字符串'921,\u201d'。 (图像是一个看起来像2015年9月21日的日期)

现在,如果我尝试执行此

a == '921,\u201d'

Python会自动转义硬编码字符串中的反斜杠(\)并且比较不相等。

如何在没有Python将某些子字符串解释为unicode字符的情况下比较两个ascii字符串?

长度为6 错误是 self.assertIn(res0,[r' 921,\ u201d'," 2015年2月21日"]) 断言错误:u'(921,\ u201d'未在[' 921,\ u201d',' 2015年2月21日']

中找到

感谢。 \ u201只是一个char。

2 个答案:

答案 0 :(得分:3)

最简单的方法是使用原始字符串文字。

a == r'921,\u201d'

这允许您使用文字反斜杠而不必转义它们(唯一的限制是字符串仍然不能以未转义的反斜杠结束)。

您也可以通过在其前加一个反斜杠来转义反斜杠:

a == '921,\\u201d'

答案 1 :(得分:0)

尝试使用&utff-8'

进行解码
>>> '921,\u201d'.decode('utf-8')
u'921,\\u201d'