为了账号安全,请及时绑定邮箱和手机立即绑定

函数:__len__()及len()的区别

为啥在Students这个类中定义了__len__之后,Students的实例不仅可以直接调用__len__(),也可以直接调用len()函数:

f=Students('A','M')

print len(f)

f.__len__()

上边两个语句都可以输出长度。

len()和__len__()有什么区别呢

正在回答

2 回答

__len__是魔法方法,它可以让你的自定义类使用len()方法来直接获取类的长度值,len() 是内置的方法,对于python的一些内置的类,比如列表(list),字符串(str),子节等,可以直接使用。但是,如果你的自定义类不包含__len__方法,len()函数在终端运行中是会报错的哦。

0 回复 有任何疑惑可以回复我~

len()是python本来就有的函数,你没有定义Student这个类也可以用的,本来就可以用的,该方法return所传入参数的长度

而__len()__是你在Student类里面定义的方法,该方法的return其实由你自己决定,你想让他return什么就是什么,不过这个方法名字就叫__len()__,当然定义成return 长度啦

2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255610    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

函数:__len__()及len()的区别

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号