Python函数精解:len()函数

Python函数精解:len()函数
最新回答
纵山崖

2023-01-15 00:22:38

Python函数精解:len()函数

len()是Python内置函数,用于返回序列类型对象(如字符串、列表、元组、字典等)的项目个数(长度)。其核心功能及使用要点如下:

1. 基本语法len(object)
  • 参数:object(序列类型对象,如字符串、列表、元组、字典等)。
  • 返回值:一个大于等于0的整数(int类型),表示对陪清段象的元素数量。
2. 适用对象及示例(1) 序列类型对象
  • 字符串:返回字符个数。s = "hello"print(len(s)) # 输出:5
  • 列表/元组:返回元素个数。lst = [1, 3, 5, '芦誉sdw']print(len(lst)) # 输出:4
  • 字典:返回键值对数量。d = {'a': 1, 'b': 2}print(len(d)) # 输出:2
(2) 非序列对象
  • 若参数为非序列类型(如整数、浮点数、布尔值等),会抛出TypeError。print(len(45.36)) # 报错:TypeError
3. 注意事项
  • 字典的特殊性:len()返回的是字典中键值对的数量,而非键或值的单独计数。
  • 空对象:若对象为空(如空列表[]或空字典{}),返回0。print(len([])) # 输出:0
  • 自定义对象:若类实现了__len__()方法,len()可作用于其实例。
4. 常见错误处理
  • 错误示例:print(len(True)) # 报错:TypeError
  • 正确做法:确保参数是序列类型或实现了__len__()的对象。
5. 底层原理

len()通过调用对象的__len__()方法实现。例如:

class MyCollection: def __len__(self): return 42obj = MyCollection()print(len(obj)) # 输出:42总结
  • 核心功能:快速获取序列或集合的长度。
  • 限制:仅适用于序列类型或实现了__len__()的正租对象。
  • 扩展性:可通过自定义__len__()支持新类型。

掌握len()的用法能高效处理数据长度计算,避免因参数类型错误导致的程序中断。