python中utf-8和utf8区别_python基础-Unicode和UTF-8的区别

讲区别之前,先讲一下这两个编码的概念。

1.Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案。

2.utf-8是一种针对Unicode的可变长度字符编码,换句话说utf-8是Unicode的实现方式之一,它规定了字符如何在计算机中存储、传输等。utf-8用1到6个字节编码Unicode字符。用在网页上可以统一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。

3.两者的区别,与其说区别,不如说关系:

3.1 Unicode为每种语言中的每个字符设定了统一并且唯一的二进制编码,却没有规定这个二进制编码如何存储,而utf-8是Unicode的实现方式之一。Unicode字符集既可以用utf-8编码方式编成计算机能够识别的二进制数值,也可以用utf-16,utf-32等方式编码。

3.2 utf-8根据字符对应的数字大小来确定,有可能是用一个字节表示一个字符,也可能是两个,三个.当然最多不能超过3个字节了,当遇到的大部分是英文的时候,utf-8相对而言会节省很多空间。

3.3 两者的转换:

1)Unicode转utf-8

#带u的字符串为unicode,s为字符串

#Python encode() 方法以 encoding 指定的编码格式编码字符串。

# 完整格式为s.encode(encoding='utf-8',errors='ignore')

<

你可能感兴趣的:(python中utf-8和utf8区别_python基础-Unicode和UTF-8的区别)