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

相关推荐
郑州光合科技余经理3 分钟前
同城系统海外版:一站式多语种O2O系统源码
java·开发语言·git·mysql·uni-app·go·phpstorm
一只乔哇噻10 分钟前
java后端工程师+AI大模型开发进修ing(研一版‖day60)
java·开发语言·人工智能·学习·语言模型
LNN202210 分钟前
Linuxfb+Qt 输入设备踩坑记:解决 “节点存在却无法读取“ 问题
开发语言·qt
foxsen_xia1 小时前
go(基础06)——结构体取代类
开发语言·算法·golang
巨人张1 小时前
C++火柴人跑酷
开发语言·c++
ID_180079054731 小时前
基于 Python 的 Cdiscount 商品详情 API 调用与 JSON 核心字段解析(含多规格 SKU 提取)
开发语言·python·json
悟能不能悟2 小时前
Caused by: java.sql.SQLException: ORA-28000: the account is locked怎么处理
java·开发语言
Q_Q5110082852 小时前
python+django/flask+vue的大健康养老公寓管理系统
spring boot·python·django·flask·node.js
亦是远方2 小时前
南京邮电大学使用计算机求解问题实验一(C语言简单编程练习)
c语言·开发语言·实验报告·南京邮电大学
我是哈哈hh2 小时前
【Python数据分析】Numpy总结
开发语言·python·数据挖掘·数据分析·numpy·python数据分析