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

相关推荐
tang777894 分钟前
哪些行业用动态代理ip?哪些行业用静态代理IP?怎样区分动态ip和静态ip?(互联网人必码·实用长文)
大数据·网络·爬虫·python·网络协议·tcp/ip·智能路由器
bugcome_com9 分钟前
C# 高级集合使用示例
开发语言·c#
sycmancia13 分钟前
C++——动态内存分配、关于虚函数、关于继承中的强制类型转换
开发语言·c++
龙泉寺天下行走14 分钟前
LangChain Skills框架核心解析
python·langchain·aigc
Mao_Hui15 分钟前
Unity3d实时读取Modbus RTU数据
开发语言·嵌入式硬件·unity·c#
echome88815 分钟前
Python 装饰器详解:从入门到精通的实用指南
开发语言·python
重生之后端学习21 分钟前
62. 不同路径
开发语言·数据结构·算法·leetcode·职场和发展·深度优先
tang7778921 分钟前
爬虫代理IP池到底有啥用?
网络·爬虫·python·网络协议·tcp/ip·ip
sg_knight24 分钟前
设计模式实战:享元模式(Flyweight)
python·设计模式·享元模式·flyweight
墨有66626 分钟前
基于弦论流体对偶与环空间约化的湍流精确数值模型
python·流体力学·弦理论