昨晚,有几个读者问我,编码这块怎么掌握,感觉总是很模糊,就知道个utf-8编码,到底如何掌握。
我其实了解也不深刻,把我知道的字符编码主要知识点,总结如下:
- Unicode 是最常用的一个字符集,只规定字符的编码,开头是'\u',如'\u4e25'对应字符是
严
,\u005c'表示反斜杠,详细编码和字符对应表可参考:https://zh.wikipedia.org/wiki/Unicode%E5%AD%97%E7%AC%A6%E5%88%97%E8%A1%A8 - ASCII编码一共规定了128个字符的编码,是美国人上世纪60年代制定的,记住只包括128个字符。1个字节能表示256个不同值,但只包括128个,所以第一位统一为0,后七位用来表示字符。
- 另一个常识:英语用上面ASCII编码的128个符号编码就够了,但其他语言,128个符号是不够的!!!
- 汉字多达10万不同字符。一个字节只能表示256种符号,肯定不够。那怎么办?必须使用多个字节表达一个符号。
- 如果使用2个字节表示一个符号,可能性有:
256 x 256 = 65536
种 - 上面提到Unicode只是一个字符集,不管存储实现它们的事情。同一个字符使用不同的存储方法,解析出来就会有很大问题。所以,急需要一种统一的编码方式。
- UTF-8编码被互联网广泛使用,它是Unicode字符集的一种极佳的存储方法。首先它是
变长度
,存储ASCII字符时,用1个字节存储它;存储汉字时,使用至少3个字节。这种变长度存储,大大提高了存储效率。 - UTF-8有一套设计精良的编码规则,感兴趣的可以去看看。
大家在看
AI安装教程
AI本地安装教程
微软AI大模型通识教程
微软AI大模型通识教程
AI大模型入门教程
AI大模型入门教程
Python入门教程
Python入门教程
Python进阶教程
Python进阶教程
Python小例子200道练习题
Python小例子200道练习题
Python练手项目
Python练手项目
Python从零在线练习题
Python从零到一60题