python初始类以及一些说明

来源:千锋教育
发布时间:2023-11-07 03:17:19
分享

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

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相关知识,请关注IT培训机构:千锋教育。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • Python math 模块 先来看一下math模块中包含内容,如下所示:>>>importmath>>>dir(math)['__doc__','__loader__','__name__
  • Python decimal 模块 decimal模块为正确舍入十进制浮点运算提供了支持,相比内置的浮点类型float,它能更加精确的控制精度,能够为精度要求较高的金融等领域提供支持。decimal在一个独立的context下工作,可以
  • Python random 模块 random模块可以生成随机数,我们来看一下其常用函数。random()返回[0.0,1.0)范围内的一个随机浮点数。看下示例:importrandomprint(random.random())un
  • Python 爬虫之pyspider pyspider是一个支持任务监控、项目管理、多种数据库,具有WebUI的爬虫框架,它采用Python语言编写,分布式架构。详细特性如下:拥有Web脚本编辑界面,任务监控器,项目管理器和结构查看器;数
  • Python 数组ndarray Numpy中定义的最重要的对象是成为ndarray的N维数组类型。它描述相同类型的元素集合。可以使用基于零的索引访问集合中的项目。大部分的数组操作仅仅是修改元数据部分,而不改变其底层的实际数据。数组的
  • Python 线程对象 先了解一下Python守护线程基本概念。守护线程:当一个线程被标记为守护线程时,Python程序会在剩下的线程都是守护线程时退出,即等待所有非守护线程运行完毕;守护线程在程序关闭时会突然关闭,可能会导