获取字符串长度

在Python中, 可以使用内置函数len()获取字符串长度, 即一个字符串有多少个字符, 具体格式为:

len(string)

在实际开发中, 除了常常要获取字符串的长度外, 有时还要获取字符串的字节数.

在Python中, 不同的字符所占的字节数不同, 数字, 英文字母, 小数点, 下划线以及空格, 各占一个字节, 而一个汉字可能占2~4个字节, 具体占多少个, 取决于采用的编码格式. 例如, 汉字在GBK/GB2312编码中占2个字节, 而在UTF-8编码中一般占用3个字节.

Example:

# 采用UTF-8编码方式
# 计算"人生苦短,我用Python"的字节数
str1 = '人生苦短,我用Python'
print(len(str1.encode('UTF-8'))

输出结果为27, 因为汉字加中文标点符号共7个, 占21个字节, 而英文字符占6个字节, 共27个字节.

同理, 如果要获取采用GBK编码的字符串长度, 可以执行如下代码:

# 采用GBK编码方式
# 计算"人生苦短,我用Python"的字节数
str1 = '人生苦短,我用Python'
print(len(str1.encode('gbk'))

输出结果为20.