这个问题是基于那个的副作用。
我的.py
文件在第一行都有# -*- coding: utf-8 -*-
编码定义器,比如我的api.py
正如我在相关问题中提到的,我HttpResponse
用来返回 api 文档。由于我通过以下方式定义编码:
HttpResponse(cy_content, content_type='text/plain; charset=utf-8')
一切正常,当我调用我的 API 服务时,除了pprint 从字典中形成的字符串之外,没有任何编码问题
由于我在我的 dict 中的某些值中使用土耳其语字符,因此 pprint 将它们转换为unichr
等价物,例如:
API_STATUS = {
1: 'müşteri',
2: 'some other status message'
}
my_str = 'Here is the documentation part that contains Turkish chars like işüğçö'
my_str += pprint.pformat(API_STATUS, indent=4, width=1)
return HttpRespopnse(my_str, content_type='text/plain; charset=utf-8')
我的纯文本输出如下:
Here is the documentation part that contains Turkish chars like işüğçö
{
1: 'm\xc3\xbc\xc5\x9fteri',
2: 'some other status message'
}
我尝试将 pprint 输出解码或编码为不同的编码,但没有成功......克服这个问题的最佳实践是什么