我正在构建一个带有两个文件的程序,经过一些处理后,我必须比较文件的某些部分。
作为一个例子,当我打印两个我想要比较的字符串时,它看起来像这样:
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'
如何在控制台中打印正确的字符并正确比较字符串?
非常感谢你的帮助。
答案 0 :(得分:3)
你有两个编码不同的文件,第一个是utf-8(CSV
),第二个是latin1(DOC
)。如果你想比较它们,你必须首先将它们解码为unicode:
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