首页 / 知识

python初始类以及一些说明

2023-11-12 13:33:00

类定义最简单的形式如下:

classClassName:

进入类定义部分后,会创建出一个新的命名空间,作为局部作用域——因此,所有的赋值成为这个新命名空间的局部变量。特别是函数定义在此绑定了新的命名。类定义完成时(正常退出),就创建了一个类对象。基本上它是对类定义创建的命名空间进行了一个包装;原始的局部作用域(类定义引入之前生效的那个)得到恢复,类对象在这里绑定到类定义头部的类名(例子中是ClassName)。

类对象支持两种操作:属性引用和实例化。属性引用的使用和Python中所有的属性引用一样的标准语法:obj.name。类对象创建后,类命名空间中所有的命名都是有效属性名。类的实例化使用函数符号。只要将类对象看作是一个返回新的类实例的无参数函数即可。如下所示:

classMyClass:

"""Asimpleexampleclass"""

id=12345

def__init__(self,realpart,imagpart):

self.r=realpart

self.i=imagpart

deff(self):return'helloworld'

if__name__=="__main__":x=MyClass(3.0,-4.5)

那么MyClass.id和MyClass.f是有效的属性引用(MyClass.r不属于类对象的有效引用,属于实例的有效引用),分别返回一个整数和一个方法对象。也可以对类属性赋值,可以通过给MyClass.id赋值来修改它。MyClass()是一个新的类实例并将该对象赋给局部变量x。类的实例化操作会自动为新创建的类实例调用__init__()方法。

按照定义,类中所有(用户定义)的函数对象对应它的实例中的方法。在例子中,x.f是一个有效的方法引用,因为MyClass.f是一个函数。但x.id不是,因为MyClass.id不是函数。不过x.f和MyClass.f不同--它是一个方法对象,不是一个函数对象。而且x.f是一个方法对象,它可以存储起来以后调用。下面的例子会不断的打印helloworld。

xf=x.f

whileTrue:

printxf()

以上内容为大家介绍了python初始类以及一些说明,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们

培训标准包装赋值函数

最新内容

相关内容

热门文章

推荐文章

标签云

猜你喜欢