在我的下面的代码段中,我处理了一串文字:Déclaration.png
我将描述作为unicode返回:
return self.render_json(request, {..."description": u''.join((instance.description)),..})
在另一个函数中,我使用上面的描述如下:
if document.description:
file_name = document.description.split(".")
file_name = "{}.{}.{}".format(
"_".join(file_name[:-1]),
str(document.id),
file_name[-1]
)
file_name是:[u'De\u0301claration', u'png']
当我在file_name上尝试.format()时,我收到以下错误:
error: 'latin-1' codec can't encode character u'\u0301' in position 2: ordinal not in range(256)
有什么想法吗?
答案 0 :(得分:0)
" {} {} {}&#34。;是一个字符串,但你试着用unicode填充它。
使用
...
file_name = u"{}.{}.{}".format(
...
代替
还可以看一下这个好话:https://www.youtube.com/watch?v=sgHbC6udIqc