
用 python3.0 开发了一个小程序,在 mac 系统下运行好好的,拿到 win7 却出现了 UnicodeEncodeError: 'gbk' codec can't encode character '\u30fb' in position 28: illegal multibyte sequence 的问题,修改系统默认编码也没有效果,求大神们解答
1 imn1 2017-11-08 16:04:26 +08:00 先执行命令`chcp 65001` 再运行 py 程序 |
2 gouchaoer 2017-11-08 16:18:22 +08:00 py3 虽然 unicode 了,但是这种编码灾难经常遇到很麻烦 |
3 sunnyadam 2017-11-08 16:27:05 +08:00 .decode("gbk") |
4 likuku 2017-11-08 16:43:30 +08:00 win10 的终端默认还是 GBK,如 1 楼操作,手动切换成 UTF-8 即可。 最近我 py3 写的小工具,直接用 input() 获取输入,win 10 下装了 python3 启动器,并关联 .py ,双击 .py 直接启动,此时拖拽文件 /目录 到 py 启动的终端窗口,得到都是正确的路径信息(中文处理良好),似乎这样就是 UTF-8 的。 |
5 likuku 2017-11-08 16:44:02 +08:00 终端下直接无参数 chcp 可以显示当前终端所用的字符集 |
6 xubeiyan 2017-11-17 09:07:06 +08:00 用 powerShell 跑啊~ |
7 xubeiyan 2017-11-17 09:09:55 +08:00 抱歉,powershell 在 win8.1 上也是 gbk |