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() 函数来获取其长度了。‌

相关推荐
这不小天嘛6 小时前
JAVA八股——J集合篇
java·开发语言
hboot6 小时前
AI工程师第五课 - 大语言模型基础
python·llm·fastapi
AOwhisky7 小时前
Python 学习笔记(第一期与第二期)——基础语法——核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发
STLearner7 小时前
ICML 2026 | LLM×Graph论文总结[1]【图基础模型,文本属性图,多模态属性图,图对齐,图提示学习,关系深度学习
论文阅读·人工智能·python·深度学习·学习·机器学习·数据挖掘
习明然9 小时前
我的本地化AI项目(三)
人工智能·python·electron·c#·avalonia
喜欢的名字被抢了9 小时前
Python实战:SQLAlchemy ORM与FastAPI项目集成
开发语言·python·sql·教程·fastapi
夏季疯11 小时前
读论文:STARS 是什么结构?一个统一的歌声自动标注框架
python
从零开始的代码生活_11 小时前
C++ 内存管理:从内存分区到 new/delete 底层原理
开发语言·c++·后端
wabs66612 小时前
关于单调栈【力扣739.每日温度的思考】
java·开发语言
光测实验室12 小时前
3种Python降噪算法实测:我把处理速度提升了20倍
python