本篇文章给大家带来的内容是浅谈python学习之字符编码与字符串。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
字符编码是什么?
例如汉字“中”,可以用以下表示
十进制:20013
二进制:01001110 00101101(unicode)/11100100 10111000 10101101(utf-8)
十六进制:u4e2d
ascii编码
ASCII编码是1个字节
只能编码纯英文
节省空间
unicode编码
Unicode编码通常是2个字节。(比如字母A用ASCII编码是十进制的65,二进制的01000001本文来源gaodai$ma#com搞$$代**码)网8;A的Unicode编码是00000000 01000001。)
uicode统一编码,解决编码冲突,乱码问题消失
比ascii多一倍的存储空间,存储和传送时不划算(UTF-8解决)
utf-8编码(可变长的unicode编码)
UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
字符 | ASCII | Unicode | UTF-8 |
A | 01000001 | 00000000 01000001 | 01000001 |
中 | x | 01001110 00101101 | 11100100 10111000 10101101 |
1)如果你要传输的文本包含大量英文字符,用UTF-8编码就能节省空间;
2)ASCII编码实际上可以被看成是UTF-8编码的一部分,所以,大量只支持ASCII编码的历史遗留软件可以在UTF-8编码下继续工作。