Python 再一次,UnicodeEncodeError(ascii编解码器可以';t编码)

Python 再一次,UnicodeEncodeError(ascii编解码器可以';t编码),python,django,unicode,cyrillic,Python,Django,Unicode,Cyrillic,我正在docker容器中运行Python3.6+gunicorn+django 2.0.5和一些西里尔文项目,这就是我在控制台中尝试使用django记录西里尔文字符串时看到的 'ascii' codec can't encode character '\u0410' in position 0: ordinal not in range(128) 这也是在shell中发生的情况 Python 3.6.5 (default, May 3 2018, 10:08:28) [GCC 5.4.0

我正在docker容器中运行Python3.6+gunicorn+django 2.0.5和一些西里尔文项目,这就是我在控制台中尝试使用django记录西里尔文字符串时看到的

'ascii' codec can't encode character '\u0410' in position 0: ordinal not in range(128)
这也是在shell中发生的情况

Python 3.6.5 (default, May  3 2018, 10:08:28) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> :�ириллица
同时,当我在docker容器外部运行python 3.5时,一切正常:

Python 3.5.2 (default, Nov 23 2017, 16:37:01) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> Кириллица
如何使python 3.6 inside docker可以使用西里尔字母字符串?

在python代码的第一行使用
#-*-编码:utf-8-*-

并在您的
Dockerfile
中添加:


ENV PythonionEncoding=utf-8

这不是字符串,这是一个标识符。不起作用:)仍在打印(“\u041f\u043e\u0435\u0445\u0430\u043b\u0438”)UnicodeCodeer错误:“ascii”编解码器无法对位置0-6的字符进行编码:序号不在范围内(128)也许它可以帮助您:谢谢!ENV pythonionecoding=utf-8-helpedI将编辑我的答案以包含此内容。如果可以,请标记为已解决。