当前位置: 首页 > 知识库问答 >
问题:

神奇的方法__len__()

岳曦
2023-03-14

如何使用类的对象调用__len__()函数?

class foo(object):
      def __init__(self,data)
         self.data = data
      def __len__(self):
         return len(self.data)
x = foo([1,2,3,4])

共有2个答案

微生学
2023-03-14

神奇方法背后的想法是能够将其称为x.__len__()len(x)。即使在初始化过程中调用了这些方法,它们也不会返回输出,必须显式调用或存储在类变量中。

您可以简单地将函数显式调用为-

class foo(object):
    def __init__(self,data):
        self.data = data
    def __len__(self):
        return len(self.data)

x = foo([1,2,3,4])

x.__len__()
#len(x)    #which is equivalent
4

或者如果您希望在初始化期间触发它,只需在__init__()中添加它。请记住,init不会返回任何内容,因此您可以将输出与打印一起推送到stdio中。

class foo(object):
    def __init__(self,data):
        self.data = data
        self.__len__()
    def __len__(self):
        print(len(self.data))

x = foo([1,2,3,4])
4

如果您想保存它,那么您可以定义一个self.length变量,该变量可以存储它,并且可以由x.length检索

class foo(object):
    def __init__(self,data):
        self.data = data
        self.length = self.__len__()
    def __len__(self):
        return len(self.data)

x = foo([1,2,3,4])
x.length
4
慕乐语
2023-03-14

你可以这样做:

>>>x = foo([1,2,3,4])
>>>len(x)
4
 类似资料:
  • 我知道python中有一些神奇的方法可以被类覆盖,以控制某些内置函数处理这些类成员的方式。例如,

  • 紫色透露着诡异的气息,所以能制造奇幻的效果。各种彩度与亮度的紫色,配上橘色和绿色,便是刺激与新奇的最佳代言人。如果紫色配上黄绿色或黄橘色,色调不合、怪异,而且俗不可耐,但如果配上它真正的补色——黄色,便能展现怪诞、诡异的感觉,令人不禁要驻足,欣赏一番。 以现代流行语来说,紫色象征“青涩”或“未成年”,常被用以代表两代关系之间的沟通桥梁。 补色色彩组合 二次色色彩组合 单色色彩组合 40 87 36

  • 人工神经网络 人工神经网络是借鉴了生物神经网络的工作原理形成的一种数学模型,有关人工神经网络的原理、公式推导以及训练过程请见我的文章《机器学习教程 十二-神经网络模型的原理》 神奇用法之一 我们这样来设计我们的神经网络:由n个输入特征得出与输入特征几乎相同的n个结果,这样训练出的隐藏层可以得到意想不到的信息。 比如,在信息检索领域,我们需要通过模型训练来得出合理的排序模型,那么输入的特征可能有:文

  • 英威腾: 前天晚上24点投的简历 第二天早上十点电话来了加微信 下午2电话人事面 4点专业面 6点oc 待遇也还行,对我这学历很友好了 主要是工作内容是我喜欢的,我也打算签了 辛辛苦苦秋招忙了近俩月,不如一晚上来的痛快 哈哈哈哈 专业面: 1、唠家常 2、英语自我介绍及简单英语对话 3、介绍项目并围绕项目提问知识点(超基础) 4、围绕岗位聊了一堆 风评也不卷,太走运了😙😙😙

  • 面的后台开发,又被写go的捞了,腾讯的后台开发是全面转go了吗,不晓得了 20分钟就结束了,以为是kpi面,竟然过了。 经典八股 进程线程协程区别 tls握手 谈谈http2.0 面试官是懂cpp的,但没问cpp就离谱

  • 句法分析 先来解释一下句法分析。句法分析分为句法结构分析和依存关系分析。 句法结构分析也就是短语结构分析,比如提取出句子中的名次短语、动词短语等,最关键的是人可以通过经验来判断的短语结构,那么怎么由机器来判断呢? (有关依存关系分析的内容,具体可以看《自己动手做聊天机器人 十二-教你如何利用强大的中文语言技术平台做依存句法和语义依存分析》) 句法分析树 样子如下:          -吃(v)-