Python中文占几个字节?Python怎么得到字符所占字节数

在python之中文本数据都是放在字符串之中以字符形式来保存的,而使用len()函数只能够获取到它的长度而无法取到实际所占空间 。而字节实际上指的就是这个字符的大小是多少,下文会来详细讲解一下python内中文所占字节数,以及得到字符所占字节的方法 。

Python中文占几个字节?Python怎么得到字符所占字节数

文章插图
一、中文所占字节
计算机中的所有文件都是需要去指定编码格式才可以去正常解析和显示内容的,而python程序实际上也就是py文件 。它默认的编码格式为utf-8,但是它从本质上来说用的是Unicode编码 。
而且中文也大致分为简体以及繁体,简体和繁体两中格式的字符在字节数量上是相等的,而字节的字符数只和当前编码格式有关 。python中要识别和输出中文需要使用到的编码格式为utf-8和gbk,前一个格式下中文所占三个字节,后一个格式下中所占两个字节,代码示例如下所示:
print(len('中文'.encode('utf-8')))6print(len('中文'.encode('gbk')))4二、获取字符所占字节
len()这个内置函数的实际作用是获取一个序列内元素的数量,而字符串经过encod()重新按照格式进行编码操作之后,它实际上就已经是被转为这个编码格式所对应的字节类型了 。调用type()函数查看该对象类型的话,得到的结果会是bytes 。
所以python获取字符所占字节数的正确语法为,外层使用print()函数输出结果 。括号内用字符串对象去调用encode()方法,因为字符串是由多个字节连接组成的 。而在encode()方法中传入不同的编码格式作为参数即可知道该字符在此编码下的字节数为多少,示例如下:
print(type('中文'.encode('gbk')))<class 'bytes'>print(len('ab'.encode('utf-8')))2【Python中文占几个字节?Python怎么得到字符所占字节数】以上就是关于“Python中文占几个字节?Python怎么得到字符所占字节数”的全部内容了,希望对你有所帮助 。

    推荐阅读