字符编码小结
记得几年前有次需要写个简单的脚本,开始用的Python碰到中文编码问题,Python2和3还不一样,感觉比较复杂,后来不折腾了改用Ruby分分钟搞定,从那时就对Python没啥好感,至少没有Ruby开发效率高,Python以缩进表示层级有时也带来不便,其他语言可以用clang-format自动格式化,就能保持风格一致了。
Python在AI的生态很好,最近写这块程序碰到bytes
和str
转换时字符编码的问题,平常也时常碰到乱码的困惑,比如打开文件或者浏览网页乱码,尝试换一下编码就ok了,但是没有深究原理。这次彻底把字符编码弄清楚了。
下面说下常见的编码,ASCII, latin-1, Unicode, UTF-8(UTF-16/32),这几种在Python中常见。