解决UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position...
解决UnicodeEncodeError: 'ascii' codec can't encode characters in position...在容器中使用 python3,如果没有做合适的配置,使用 print(“中文内容”)会出现编码问题,比如在控制台输出汉字会报错或输出了“乱码”,一般来说是因为 python3输出环境没有配置好 utf-8编码的原因,解决据说有多个,其中一个解决方法是在
·
解决UnicodeEncodeError: 'ascii' codec can't encode characters in position...
在容器中使用 python3,如果没有做合适的配置,使用 print(“中文内容”)会出现编码问题,比如在控制台输出汉字会报错或输出了“乱码”,一般来说是因为 python3输出环境没有配置好 utf-8编码的原因,解决据说有多个,其中一个解决方法是在python 用代码就可以实现,也很容易,就是添加这样的代码:
sys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach())
但是这个代码是有问题,因为它把缓存停了,输出不会立即显示;
怎么办,其实这样就可以了:
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding="utf8",line_buffering=True)
好用!
另一好用的方法是直接在终端中运行如下命令:
export PYTHONIOENCODING=UTF-8
然后再运行python 执行 py 文件就可以;
https://www.codenong.com/984014/
更多推荐
已为社区贡献1条内容
所有评论(0)