繁体   English   中英

为什么Python默认使用ASCII编码?

[英]Why does Python default to ASCII encoding?

由于默认的ASCII编码,我在Python中遇到了很多错误。 我总是要记住将其切换到utf8

我想知道,默认ASCII编码有什么原因或好处吗? 严格来说,它似乎比utf8差,并且会引起烦人的错误。 我是否总是通过切换到utf8错过了某些东西?

因为Python 2 Unicode是在UTF-8普及之前就建立的(早在1999-2000年)。 另一方面,几乎所有使用8位编解码器的目标平台都可以理解ASCII。

如果您查看Wikipedia UTF-8的采用图表 ,您会发现UTF-8直到2006年才真正流行起来:

维基百科的UTF-8增长图

只有使用Python 3才可以更改此默认值。 隐式编码和解码消失了,默认的源代码编码已更改为UTF-8(打印,文件I / O和文件系统名称的默认值取决于系统,就像Python 2中一样)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM