本文共 384 字,大约阅读时间需要 1 分钟。
最近踩到个小坑:Windows Terminal 下,通过 WSL ssh 连接另一台 Linux 时,另一台 Linux 上的 python 程序控制台输出正常;但是通过 Putty(或者 XShell)ssh 连另一台 Linux 时,另一台 Linux 上的 python 程序控制台输出报:
UnicodeEncodeError: 'ascii' codec can't encode characters (left skipped)
摸索了一圈,发现是 Linux 系统默认编码的锅,而解决方法其一为在 python script 起始处:
import sysimport codecssys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach())
其二改系统默认编码,不提。
转载地址:http://yqbws.baihongyu.com/