len()和.__ len __()之间的区别?

发布于 2021-01-29 14:55:38

呼叫len([1,2,3])或之间有什么区别[1,2,3].__len__()

如果没有明显的差异,那么幕后的操作又有什么不同?

关注者
0
被浏览
124
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    len是获取集合长度的函数。它通过调用对象的__len__方法来工作。__something__属性是特殊的,通常不只是眼神,通常不应直接调用。

    它是在很久以前的某个时刻决定的,它的长度应该是一个函数而不是方法代码,理由是len(a)初学者可以理解的含义,但a.len()不清楚。Python启动__len__时甚至还不存在,这len是一种特殊的东西,可用于几种类型的对象。不管情况是否如此,从整体上讲都是合理的,它将继续存在。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看