【重要】获取字符串长度的几个函数1
在 Python 中,获取字符串长度的主要方法是使用内置的 len() 函数。以下是详细说明和示例:
1. len() 函数
- 最常用的方法,直接返回字符串的字符个数(包括空格和特殊字符)。
- 时间复杂度:O(1),因为字符串在 Python 中会存储其长度。
python
| s = "Hello, 世界" | |
| print(len(s)) # 输出: 8(注意:中文字符也算1个长度) |
2. 其他相关方法(非直接获取长度)
str.__len__():len()底层调用的方法,但通常不直接使用。pythonprint("Hello".__len__()) # 输出: 5(不推荐直接调用) - 编码相关(如需字节长度):
str.encode()+len():获取字符串的字节长度(需指定编码,如 UTF-8)。pythons = "世界" print(len(s.encode('utf-8'))) # 输出: 6(每个中文字符占3字节)
3. 注意事项
- Unicode 字符:
len()返回的是 Unicode 字符数,而非字节数。例如,"世界"的长度是 2。 - 特殊字符:如换行符
\n或制表符\t各算 1 个长度。
示例对比
python
| s = "Python\n编程" | |
| print(len(s)) # 输出: 8(6个字母 + \n + 2个中文字符) | |
| print(len(s.encode())) # 输出: 12(UTF-8编码下,中文字符各占3字节) |
总结
- 标准用法:始终使用
len(str)。 - 字节长度:结合
encode()和len()。 - 避免直接调用
__len__(),除非有特殊需求。
如果有其他边缘需求(如统计非空格字符等),可能需要结合循环或正则表达式实现。

浙公网安备 33010602011771号