python 代码我平时都是 win 下面的 cmd 直接运行
print 查看错误的
如果 print 显示基本正常 ,然后就上线代码
但是之前遇到一个编码错误,类似这个帖子 https://www.v2ex.com/t/320544 ,当时我认为这是 python3.5 的编码 bug
但看了那个帖子发现,是 win cmd 的问题,我刚才也测试了,cmd 下运行会出现编码问题,用 ide 的 F5 运行,一切正常
那么,从此以后,就不能信任 windows 的 cmd 了,不能用它来运行 python 脚本了
但是,以后用什么来运行脚本呢?
powerShell 吗,我那个乱码的脚本用 powershell 测试了,也运行不正常,提示编码问题
我正在装 ubuntu on win ,不晓得这个能不能解决问题
大家怎么看呢?
1
imn1 2016-11-15 11:59:50 +08:00 1
关键是你还没了解编码,或者说乱码问题的本质
本质就是,任何一个 IO 过程,前后编码不同就会产生乱码 不要以为一个程序运行过程就是一个 IO 过程 读写文件就是两个 IO 过程了,手动输入、数据库读写等等,从 stdout 到显示也是一个 IO 过程…… 所以解决乱码问题,就是解决所有,是所有, IO 过程前后编码的一致性 |
2
imn1 2016-11-15 12:05:52 +08:00 1
接 1L ,给你个作业,如果运行环境 linux 系统的 locale 是 zh-CN.gbk 而不是 zh-CN.utf-8 ,你想想你写的程序会如何?
换一个问法,是否就是 win cmd 的锅? |
3
mooncakejs 2016-11-15 12:35:31 +08:00
chcp 65001
|
4
iyaozhen 2016-11-15 14:30:38 +08:00 via Android 1
有些步骤比较复杂的,涉及算法的,不单步调试咋搞?
|