Python培训-关于类的概念

发布时间:2021-09-14 08:43:42 人气:561 作者:admin

Python培训-关于类的概念

  很多初学的小伙伴们,在学到“类”的时候,就开始犯迷糊了。“类”到底是个什么东西,是用来干嘛的?然后就百度搜索,搜出了很多。一看回答,很多都是在扯什么面向对象,还讲了一堆稀奇古怪的概念,看了反而更迷糊了。所以,我这篇文章,就是要带大家,用最简单、通俗、暴力的方式理解什么是类,类能干什么,怎么使用。

Python培训-关于类的概念

  首先,我们要明白,既然python的作者设计了“类”这个东西,那肯定是在编程的时候有这种需求的。那我们什么时候需要用到类呢?当然,可以用到类的地方有很多很多。但如果大家还没有太多的代码经验,我就直接告诉你们答案了:如果多个函数需要反复使用同一组数据,使用类来处理,会很方便。

  面向对象编程是在面向过程编程的基础上发展来的,它比面向过程编程具有更强的灵活性和扩展性。面向对象编程是程序员发展的分水岭,很多初学者会因无法理解面向对象而放弃学习编程。

  面向对象编程(Object-oriented Programming,简称 OOP),是一种封装代码的方法。其实,在前面章节的学习中,我们已经接触了封装,比如说,将乱七八糟的数据扔进列表中,这就是一种简单的封装,是数据层面的封装;把常用的代码块打包成一个函数,这也是一种封装,是语句层面的封装。

  打个比方,若在某游戏中设计一个乌龟的角色,应该如何来实现呢?使用面向对象的思想会更简单,可以分为如下两个方面进行描述:从表面特征来描述,例如,绿色的、有 4 条腿、重 10 kg、有外壳等等。从所具有的的行为来描述,例如,它会爬、会吃东西、会睡觉、会将头和四肢缩到壳里,等等。

  如果将乌龟用代码来表示,则其表面特征可以用变量来表示,其行为特征可以通过建立各种函数来表示。参考代码如下所示:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

class tortoise:

   bodyColor = "绿色"

   footNum = 4

   weight = 10

   hasShell = True

   #会爬

   def crawl(self):

       print("乌龟会爬")

   #会吃东西

   def eat(self):

       print("乌龟吃东西")

   #会睡觉

   def sleep(self):

       print("乌龟在睡觉")

   #会缩到壳里

   def protect(self):

       print("乌龟缩进了壳里")

  因此,从某种程序上,相比较只用变量或只用函数,使用面向对象的思想可以更好地模拟现实生活中的事物。

  面向对象相关术语

  在系统学习面向对象编程之前,初学者要了解有关面向对象的一些术语。当和其他人讨论代码的时候,或者尝试查找我们遇到的问题的解决方案时,知道正确的术语会很有帮助。

  面向对象中,常用术语包括:

  类:可以理解是一个模板,通过它可以创建出无数个具体实例。比如,前面编写的 tortoise 表示的只是乌龟这个物种,通过它可以创建出无数个实例来代表各种不同特征的乌龟(这一过程又称为类的实例化)。

  对象:类并不能直接使用,通过类创建出的实例(又称对象)才能使用。这有点像汽车图纸和汽车的关系,图纸本身(类)并不能为人们使用,通过图纸创建出的一辆辆车(对象)才能使用。

  属性:类中的所有变量称为属性。例如,tortoise 这个类中,bodyColor、footNum、weight、hasShell 都是这个类拥有的属性。

  方法:类中的所有函数通常称为方法。不过,和函数所有不同的是,类方法至少要包含一个 self 参数(后续会做详细介绍)。例如,tortoise 类中,crawl()、eat()、sleep()、protect() 都是这个类所拥有的方法,类方法无法单独使用,只能和类的对象一起使用。

  以上是Python培训中关于类的概念的介绍,由多测师亲自撰写。  https://www.e70w.com/

返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线