首页 > TAG信息列表 > python-datamodel
您将如何确定Python类的每个属性和方法的定义位置?
给定Python中某个类的实例,能够确定每行源代码定义了每个方法和属性(例如实现1)将很有用.例如,给定一个模块ab.py class A(object): z = 1 q = 2 def y(self): pass def x(self): pass class B(A): q = 4 def x(self): pass def w(self): pass 定义python – 何时以及如何更改对象的__class__ attr?
我希望能够做到: >>> class a(str): ... pass ... >>> b = a() >>> b.__class__ = str Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: __class__ assignment: only for heap typespython – 一切都比无?
参见英文答案 > A number smaller than negative infinity in python? 1个 除了None之外,是否有Python内置数据类型,其中: >>> not foo > None True 其中foo是该类型的值? Python 3怎么样?解决方法:None总python – 获取实例的类名?
如果我从中执行此操作的函数是实例的类派生的基类,如何找出在Python中创建对象实例的类的名称? 想到也许the inspect module可能在这里帮助了我,但它似乎没有给我我想要的东西.如果没有解析__class__成员,我不知道如何获取这些信息.解决方法:您是否尝试过该类的__name__属性?即type(x在Python中获取方法参数名称
鉴于Python函数: def aMethod(arg1, arg2): pass 如何提取参数的数量和名称.即,鉴于我有一个func的引用,我想要返回func.[something](“arg1”,“arg2”). 这种情况的使用场景是我有一个装饰器,我希望使用方法参数的顺序与它们为实际函数出现的顺序相同.即,当我调用aMethod(“Python数据模型文档:未绑定的用户定义的方法对象和类方法对象
在参考文献的数据模型中,作者花了很多精力来解释如何创建和操作用户定义的方法:(见http://docs.python.org/reference/datamodel.html#the-standard-type-hierarchy并向下滚动) User-defined method objects may be created when getting an attribute of a class (perhaps vi循环Python / IronPython对象方法
循环Python对象的方法并调用它们的正确方法是什么? 鉴于对象: class SomeTest(): def something1(self): print "something 1" def something2(self): print "something 2" 解决方法:您可以使用inspect模块获取类(或实例)成员: >>> class C(object): ... a = 'blah如果你实现__getattribute__,有没有办法访问形式参数
好像__getattribute__只有2个参数(self,name). 但是,在实际代码中,我拦截的方法实际上是参数. 反正有没有访问这些论点? 谢谢, 查理解决方法:__getattribute__只返回请求的属性,如果是方法,则使用__call__接口来调用它. 而不是返回方法,返回一个包装器,例如: def __getattribute__(s