python中 __len__
来源:互联网 发布:淘宝银饰店哪家是正品 编辑:程序博客网 时间:2024/05/12 08:42
如果一个类表现得像一个list,要获取有多少个元素,就得用 len() 函数。
要让 len() 函数工作正常,类必须提供一个特殊方法__len__(),它返回元素的个数。
例如,我们写一个 Students 类,把名字传进去:
class Students(object): def __init__(self, *args): self.names = args def __len__(self): return len(self.names)
只要正确实现了__len__()方法,就可以用len()函数返回Students实例的“长度”:
>>> ss = Students('Bob', 'Alice', 'Tim')>>> print len(ss)3
任务
斐波那契数列是由 0, 1, 1, 2, 3, 5, 8...构成。
请编写一个Fib类,Fib(10)表示数列的前10个元素,print Fib(10) 可以打印出数列的前 10 个元素,len(Fib(10))可以正确返回数列的个数10。
- ?不会了怎么办
需要根据num计算出斐波那契数列的前N个元素。
参考代码:
class Fib(object): def __init__(self, num): a, b, L = 0, 1, [] for n in range(num): L.append(a) a, b = b, a + b self.numbers = L def __str__(self): return str(self.numbers) __repr__ = __str__ def __len__(self): return len(self.numbers)f = Fib(10)print fprint len(f)
0 0
- python中 __len__
- python中 __len__
- Python __len__定制输出
- python __len__(self)详解
- Python基础篇之__len__
- Python类,特殊方法, __getitem__,__len__, __delitem__
- Python __len__()、__reversed__()、__contains__() (十二)
- python 魔术方法:__getitem__、__setitem__、__delitem__、__len__
- python四个魔法方法__len__,__getitem__,__setitem__,__delitem__
- python 魔法方法之:__getitem__ __setitem__ __delitem__ __len__
- 详解Python魔术方法__getitem__、__setitem__、__delitem__、__len__
- python 类中的__nozero__ ,__len__ 重写,可以定义对象的布尔值是True or False
- 用python 实现链表(实现__getitem__,__set__,__len__ 魔法方法)
- Python----__len__可以用len()函数返回对象实例的“长度”
- python中运行其他python
- 【Python语法】python中__name__
- Python中numpy中asarray
- Python中numpy中asarray
- osg三角带绘制
- Fibonacci数列 知识点梳理
- define和typedef
- ubuntu server换源
- 莫名其妙的错误
- python中 __len__
- C#第三章示例6
- 配置ssh无密码登录
- B001-Atmega16-SPI Flash
- http请求响应码集合
- Java策略模式
- mysql event
- 【PHP笔记】PHP实现验证码
- TelephonyManager监听电话状态