Day01-Python基础_什么是类.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Python基础_什么是类 Pyt hon是⾯向对象的⾼级编程语⾔,在Pyt hon⾥⾯“⼀切都是对象”:数字、字符串、 元组、列表、字典、集合等内置数据类型,以及函数、⽅法、类、模块都是对象。 语⾔本身提供了上述的基本对象,但在实际编程中,我们要创造各种各样的对象, Pyt hon就为我们提供了创造我们⾃⼰的对象的⽅法:类。 类 (Class ),就是组合数据和功能的方法 ,它让我们创建一个新类型的对象 ,并可以创 建该类型的新实例。类组合的数据 ,就是保存 自己状态的属性 ,而它组合的功能 (函 数)就是改变自己状态的(定义在类中的)方法。类内部定义的函数,称为类的方法。 Python中的类和其它语言 (比如C++ )有很多相似的特征但也有些 区别。如果你已了 解其它语言的类的概念 ,可以在学习Python类时做一定的对比进行学习 ;如果你没有学 过其它语言也不要紧,学过之后你会发现,类的概念是如此简单。 类的定义 类的定义是通过关键字class实现的,下面是最简单的类的定义的样子: 是不是这个形式跟函数的定义(def 语句)很像。因为类是数据和功能的组合,所以语 句1可能是内部变量(数据)的定义和赋值语句,也可能是内部方法(函数)的定义语 句。类内部的函数定义通常具有一种特别形式的参数列表,这是方法调用的约定规范里 面指明的。这个特别形式就是第一个参数必须是self ,后面将详细介绍。 进⼊类定义时,就会创建⼀个新的命名空间,并把它⽤作局部作⽤域。因此,所有对局 部变量的赋值都是在这个新命名空间内进⾏的。特别的,函数定义会绑定到这个局部作 ⽤域⾥的新函数名称。 正常离开(从结尾出)类定义时,就会创建⼀个类对象。它基本上是⼀个包围在类定义 所创建的命名空间内容周围的包装器。元素的(在进⼊类定义之前起作⽤的)局部作⽤ 域将重新⽣效,类对象将在这⾥被绑定到类定义头给出的类名称(在上⾯的例⼦中就是 ClassName)。 类对象 类对象(比如上面例子的ClassName )支持两种操作:属性引用和实例化。 属性引用的语法跟 Python中所有属性引用的方法一样 :obj .name。类对象被创建时存 在于类命名空间内的所有名称都是有效的属性名称。下面是一个包含数据和方法的简单 的类定义: 对这个类的有效的属性引用就是: KaiKeBa.name KaiKeBa.say_hi , 它们分别返回一个字符串和一个函数对象。 类属性也可以被赋值,因此可以通过赋值来更改KaiKeBa.name的值。 类的__doc__也是一个有效的属性 ,对他的引用会返回所属类的文档字符 串 :A demo of class。 类的实例化 ,是使用函数表示法 ,可以把类对象看做是会返回一个新的类实例的函数。 比如上面类对象的实例化就是: kkb KaiKeBa() 这就创建了一个类的新实例并将词对象分配给局部变量kkb。 实例化操作可以看成是 “调用”类对象。但我们在创建类实例时都想要做些初始化操 作 ,为此类定义时可以定义一个名为__init__()的特殊方法 。它是类实例化的初始化方 法,跟C ++语言中 的构造函数类似。 def __init__(self ): self .data None 定义了__init__()方法后,类的实例化操作会自动调用该方法。 当然,__init__()方法也可以有额外(除self之外)的参数以实现更灵活的初始化操作。类 对象实例化时(“调用”类对象)传递的参数会被传递给__init__()方法。例如: In [27]: class Point : ...: def __init__(self , x, y): ...: self .x x ...: self .y y ...: In [28]: p Point (7, 8) In [29]: p.x, p.y Out[29]: (7, 8) 实例对象 类实例化后我们就得到了实例对象 ,对它的操作就是 :属性引用。这里的有效属性名称 是数据属性和方法。 数据属性 ,数据属性不需要声明 ,它像普通变量一样 ,在第一次赋值时产生。比如p是 声明创建的Point的实例,则以下代码会打印数值8 : p.t imes 1 while p.t imes 5: p.t imes p.t imes * 2 print (p.t imes) del p.t imes 虽然p.t imes并没

文档评论(0)

JuanHuang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档