python--__len__(self)

在Python中,‌__len__ 是一个特殊方法(‌也称为魔术方法或双下划线方法)‌,
作用 :‌这个方法应该返回一个整数,‌表示对象的"长度"或"大小"。‌类似list对象实例的 len() 函数时应该返回什么值。
使用场景 :当你定义了一个类,‌并且想要这个类的对象能够支持 len() 函数时,‌你就需要在该类中定义 len 方法。‌

下面是一个简单的例子,‌展示了如何在一个类中定义 len 方法:‌

复制代码
class MyList:
    def __init__(self, initial_list=None):
        if initial_list is None:
            self.items = []
        else:
            self.items = initial_list

    def __len__(self):
        # 返回items列表的长度
        return len(self.items)

# 使用示例
my_list = MyList([1, 2, 3, 4, 5])
print(len(my_list))  # 输出: 5

分析 :在这个例子中,‌MyList 类模拟了一个简单的列表。‌它有一个 init 方法用于初始化对象,‌并接受一个可选的 initial_list 参数来设置对象的初始内容。‌__len__ 方法则简单地返回了内部 items 列表的长度。‌

通过定义 len 方法,‌MyList 类的对象就可以像内置的列表(‌list)‌一样,‌使用 len() 函数来获取其长度了。‌

相关推荐
qz_Serene2 分钟前
C语言:编译和链接
c语言·开发语言
米码收割机3 分钟前
【Python】Flask+SQLite_web 宠物领养系统 (源码+文档)【独一无二】
前端·python·flask
会编程的土豆7 分钟前
功能详解 01 · 用户注册:从表单到数据库一行
开发语言·数据库·后端·mysql·golang
Ivanqhz17 分钟前
Rust collect() 浅析
开发语言·后端·rust
卷无止境35 分钟前
python进阶:类方法与静态方法的分野,classmethod 和 staticmethod 到底该怎么选
后端·python
Wang's Blog36 分钟前
Go-Zero项目开发33: IM实时通信前后端对接与微服务基础设施实践
开发语言·微服务·golang·go-zero
卷无止境38 分钟前
继承与多态:Python OOP里最容易被用错的两把梯子
后端·python
SelectDB技术团队1 小时前
丰巢日志平台 ELK 替代:Apache Doris / SelectDB 的技术能力与实践
开发语言·python
BetterFlow_CFD1 小时前
COMSOL声学仿真基础知识(二)
开发语言·算法·matlab