1

我正在构建一个需要两个文件的程序,经过一些处理,我必须比较文件的某些部分。

例如,当我打印要比较的两个字符串时,它看起来像这样:

CSV = 'UC013. MANTER ITEM DE NOTA FISCAL / NOTA DE SERVI\xc3\x87O / RECIBO'
DOC = 'UC013. MANTER ITEM DE NOTA FISCAL / NOTA DE SERVI\xc7O / RECIBO'

两者应该相同:

'UC013. MANTER ITEM DE NOTA FISCAL / NOTA DE SERVIÇO / RECIBO'

如何在控制台中打印正确的字符并正确比较字符串?

非常感谢你的帮助。

4

1 回答 1

3

您有两个具有不同编码的文件,第一个是 utf-8 ( CSV),第二个是 latin1 ( DOC)。如果要比较它们,则必须先将它们解码为 un​​icode:

CSV = 'UC013. MANTER ITEM DE NOTA FISCAL / NOTA DE SERVI\xc3\x87O / RECIBO'
DOC = 'UC013. MANTER ITEM DE NOTA FISCAL / NOTA DE SERVI\xc7O / RECIBO'
CSV = CSV.decode('utf-8')
DOC = DOC.decode('latin1')
print(CSV == DOC)    # True
于 2012-10-09T13:02:46.120 回答