python-datamodel

    2热度

    4回答

    我在写一个充当不可变,无限序列的python类。 该类不使用生成器来访问此无限序列,而是根据__getitem__方法中的算法为该序列中的任意索引生成一个值。 我很好奇,处理这种对象的__len__方法的最佳方法是。理想情况下,我只会通过__len__返回float("inf")。但是,在幕后调用对象的__len__方法的len()函数需要一定的特定值。 如果__len__设置为返回float(“

    1热度

    4回答

    刚刚在字典“类型”子类遇到问题。我没有覆盖_ _ ITER _ _方法和预期会影响其他的方法,如出iterkeys,钥匙等,因为我相信他们所说_ _ ITER _ _方法来获取值,但似乎他们是独立实现,我一定要覆盖所有的他们。 这是一个错误或意图,他们没有使用其他方法,并单独检索值? 我没有在标准类的方法之间的标准Python文档描述中找到调用依赖关系。对于分类工作以及定位需要哪些方法来覆盖适当的

    52热度

    10回答

    ... is关键字可用于字符串中的相等性。 >>> s = 'str' >>> s is 'str' True >>> s is 'st' False 我都尝试__is__()和__eq__(),但他们没有工作。 >>> class MyString: ... def __init__(self): ... self.s = 'string' ... def __is__(se

    24热度

    1回答

    当我说“python属性查找过程”我的意思是:当你写x.foo时,python会做什么? 搜索网页,我没有发现有关此多文档,我找到了最好的论文之一恢复了proccess以下步骤(你可以看到完整的文章here) 如果attrname是一个特殊的(即Python提供的)objectname属性,返回它。 检查对象名.__类__.__ dict__ for attrname。如果它存在并且是数据描述符,

    3热度

    1回答

    在数据模型基准的,作家花大力气解释如何用户定义的方法创建和操作:(参见http://docs.python.org/reference/datamodel.html#the-standard-type-hierarchy或许经由那个类的一个IN-姿态)得到一个类(的属性 当滚下)可被创建 用户定义的方法的对象,如果 属性是一个用户定义的功能对象,未绑定的用户定义的方法对象 或一个类方法对象。如果属

    3热度

    1回答

    据说: 当将产生一个类的方法的对象,它被转换成其im_class一个 结合用户定义的方法对象和im_self属性 均为C. 在 Reference 而且我做了一个EX。 >>> class C(object) : ... @classmethod ... def cm(cls) : print cls ... >>> C.cm <bound method type.cm of <cl

    2热度

    2回答

    如何获得在Python中定义方法的类? 例如 class A(object): def meth(self): return **get_current_class()** class B(A): def meth(self): do_something return super(B,self).meth() >>> b=B() >>

    0热度

    1回答

    在Python 3中有没有一种方法表明一个类不支持其父类支持的某些操作?*我知道类可以将__hash__设置为None以指示类型不可用,但这似乎不起作用一般来说。 例如,假设我有一个集合类,其中有一个__len__方法,我想让一个子类代表一个没有定义大小的无限集合。如果我在子类中将__len__设置为None,当我尝试获取集合的长度时,会收到一个丑陋/令人困惑的错误消息。 >>> class C:

    1热度

    2回答

    我想获取正在装饰的函数的原始文件/脚本名等。我怎样才能做到这一点? def decorate(fn): def wrapped(): return "scriptname: " + fn.scriptname? return wrapped 我试过使用fn.__code__,但那给了我更多我需要的东西。我可以解析这个字符串来获得函数名称,但不知道是否有一个

    0热度

    1回答

    据我所知(纠正我,如果我错了),Python解释器启动时会创建一些值。 有没有找出这些值的方法?