如何比较 Python 中包含反斜杠的两个字符串
How to compare two strings which contain backslashes in Python
我正在使用来自 Python 的模块 ocr 和一些图像 return 这个字符串 '921,\u201d'
。 (图像是一个看起来像 9/21/2015 的日期)
现在,如果我尝试执行这个
a == '921,\u201d'
Python自动转义硬编码字符串中的反斜杠(\
)比较不相等
如何在不将某些子字符串解释为 unicode 字符的情况下 Python 比较两个 ascii 字符串?
长度为6
错误是
self.assertIn(res0, [r'921,\u201d', "Feb 21, 2015"])
AssertionError: u'(921,\u201d' not found in ['921,\u201d', 'Feb 21, 2015']
谢谢。 \u201 是唯一一个字符。
最简单的方法是使用原始字符串文字。
a == r'921,\u201d'
这允许您使用文字反斜杠而不必转义它们(唯一的限制是字符串仍然不能以未转义的反斜杠结尾)。
您还可以通过在反斜杠前添加反斜杠来转义反斜杠:
a == '921,\u201d'
尝试使用'utf-8'解码:
>>> '921,\u201d'.decode('utf-8')
u'921,\u201d'
我正在使用来自 Python 的模块 ocr 和一些图像 return 这个字符串 '921,\u201d'
。 (图像是一个看起来像 9/21/2015 的日期)
现在,如果我尝试执行这个
a == '921,\u201d'
Python自动转义硬编码字符串中的反斜杠(\
)比较不相等
如何在不将某些子字符串解释为 unicode 字符的情况下 Python 比较两个 ascii 字符串?
长度为6 错误是 self.assertIn(res0, [r'921,\u201d', "Feb 21, 2015"]) AssertionError: u'(921,\u201d' not found in ['921,\u201d', 'Feb 21, 2015']
谢谢。 \u201 是唯一一个字符。
最简单的方法是使用原始字符串文字。
a == r'921,\u201d'
这允许您使用文字反斜杠而不必转义它们(唯一的限制是字符串仍然不能以未转义的反斜杠结尾)。
您还可以通过在反斜杠前添加反斜杠来转义反斜杠:
a == '921,\u201d'
尝试使用'utf-8'解码:
>>> '921,\u201d'.decode('utf-8')
u'921,\u201d'