【发布时间】:2020-04-15 14:05:40
【问题描述】:
我从来没有真正理解编码和解码在 python 中是如何工作的,而且我经常遇到这类问题。我必须读取一个 json 文件并将它的一些值与其他数据进行比较。
在其中一个文件中,我有字符串BAIXA DA INSCRI\u00c7\u00c3O ESTADUAL,它应该变成BAIXA DA INSCRICAO ESTADUAL。我正在阅读这样的文件:
with codecs.open(filepath, 'r') as file:
filedata = json.loads(file.read())
但是字符串被读取为 unicode 并表示为 u'BAIXA DA INSCRI\xc7\xc3O ESTADUAL'
我怎样才能做到这一点,以及在 python 中使用编解码器的正确方法是什么?
【问题讨论】:
-
你从哪里读到的?什么是编解码器?
-
codecs用于设置文件编码,在open具有encoding参数的 Python 3 中不需要。当您从文件中读取inscrição时,它不会神奇地解释字母ç => c 和ã => a,您必须设置正确的解释规则。不是编码问题。
标签: python