scratch植物大战僵尸脚本,python编程植物大战僵尸

  scratch植物大战僵尸脚本,python编程植物大战僵尸

  编程的两种思路:面向对象和面向过程。

  面向过程编程的核心是过程(流水线思维),过程是解决问题的步骤。面向过程的设计就像设计流水线,考虑什么样的事情要及时处理。

  好处是写程序的复杂度大大降低,只需要按照执行的步骤把代码堆叠起来就可以了。

  缺点是流水线和流程用来解决一个问题,电线动遍全身。

  应用场景:基本不变的场景完成后,著名的例子有Linux内核、git、Apache http server等。

  面向对象编程的核心是对象(精神思维)。要了解一个物体是什么,我们必须把自己当成上帝。在上帝眼里,这个世界上存在的一切都是物体,不存在的东西也是可以被创造的。

  面向对象的优点和缺点:

  好处是解决了程序的扩展性。当单个对象被修改时,它会立即反映在整个系统中。比如在游戏中很容易修改一个人的角色参数的特性和技能。

  缺点:可控性差,无法准确预测面向过程编程中问题的处理流程和结果。面向对象的程序一旦启动,就会通过对象之间的交互来解决问题。连上帝都无法预测最后的结果。

  APP解决方案:需求不断变化的软件。一般需求变化集中在用户层、网络APP应用、内部软件、游戏等。这是主动面向对象编程的好地方。

  两者相辅相成,不是对立的,都是为了解决问题。

  1.类和对象类是由多个相似对象组成的组的总称。有助于快速理解和判断事物的本质。

  类别:具有相同的特征(人、狗、老虎、手机)。

  对象/例子:具体的东西(你同学诱人的草莓,楼下的热钱))。

  实例化:3354类对象的过程

  比如说到手机,请想象一下它的形状。它具有收发电子邮件、打电话和连接网络的功能。但是你知道我说的是哪个网站吗?

  不会,所以手机是属性和方法都一样的类;你用手机做了什么,手机是谁的,都是手机范畴的对象。

  比如小米手机

  Python中的所有对象、列表对象和数字对象

  变量用来表示特征,函数用来表示技能。具有相同特征和技能的类是类,对象是具体内容。

  2.创建和创建类a)定义类语法:

  班级学生:

  传球

  类别:

  类名规范:由一个或多个单词组成,每个单词首字母大写,其余要求小写字母的Python全部面向对象,需要扩展内存空间#作者:网络老辛#开发时间:2021/4/0046 SCLL

  通过查看ID的值,可以看到这里的类打开了内存空间。

  1:学生类模板#作者:网络老辛#开发时间:2021/4/4/00046 sclasstudent 3360 Native _ pace= Shandong #变量直接写在类中成为属性,而学生的本地实例方法:定义为类外的函数和定义为方法def __init__(self,name,Age): self。name=nameelf。年龄=年龄#自我。)局部变量名是一个静态方法叫做实体属性defeat(self): print (eating)),也叫吃方法,也叫动态属性。@ statticmethod def method)):printing))因为我用了staticmethod),所以用了classmethod defcm(cls命名的static method’)@ classmethod #(CLS是用class method限定的)。在这种情况下,您可以看到静态方法、实例方法、类方法和动态属性。

  b)创建目标对象也称为类的实例化。

  语法:实例名=类名())

  类名括号被实例化,这将自动触发_ init _ function的执行。您可以使用它为每个实例定制您自己的特性。

  #作者:网络老辛#开发时间:2021/4/4/00046 sclass student:native _ pace= Shandong #变量直接写在类中成为属性#实例方法(定义为类中方法def__的年龄):self . name=namespace . age=age # self.将局部变量名赋给实体的属性failure(self):print("在吃饭的时候")staticmethod @ statticmethoddef方法)(:print)我将使用staticmethod

  Cm (CLS): print(我是classmethod因为我用class method装饰了它)# #创建Student stu1=Student的对象(互联网老辛,40)stu 1 . eat()print(stu 1 . name)print(stu 1 . age)

  实例化的过程是:3354类对象的过程。

  原来我们只有一个学生类,产生了一个stu1对象,它有自己特定的命令、年龄、吃法。

  2 #案例#作者:互联网老辛#开发时间:2021/4/4/0004 6s类Person: role= person #角色的属性是people def __init__(self,Name): self.name=name #每个角色都有自己的名字def walk(self):print( Person can walk )# #实例化过程P1=Person( charming strawberry )# Class Name()相当于执行Person。__init__()#这里可以理解为p1={name :迷人的草莓, walk:walk}print(p1.name) #直接查看属性,对象名print(p1.walk()) #调用方法,对象名和方法名。大多数注释都写在代码中,所以你可以阅读代码来理解它。

  在刚才的代码中加入功能,比如人不仅可以走路还可以攻击狗。

  类Person: role=person #角色的属性是def _ _ init _ _ (self,name,aggressiveness,Life_value): self.name=name #每个角色都有自己的名字self。侵略性=侵略性#每个角色都有攻击力self.life_value=life_value #每个角色都有生命值def walk(self) : print(人可以走)def attack (self,dog): dog.life _ value-=self .侵略性# #实例化过程p1=person(迷人的草莓,10000)# class name()相当于执行Person。__init__()#这里可以理解为p1={name :迷人的草莓, walk : walk } print(P1 . name)# View属性直接对象名,属性名print (p1.walk())对象名。方法名print(P1 . aggressive ness)print(P1 . life _ value)c)类属性、类方法、静态方法类属性:类中方法外的变量称为类属性,由所有对象共享:用@classmethod来修饰方法,用类名直接访问静态方法来修饰方法用@staticmethod,用类名直接访问方法print (student)

  Student.cm调用类方法

  Student.sm调用静态方法

  用计算机编程语言实现植物大战僵尸里的面向对象class Flora: role=flora #定义一个植物类,属性是植物def __init__(自我,名字,攻击性,生命值,金钱):自我。name=name self。侵略性=侵略性# #每个角色都有自己的攻击力自我生活价值=生命值#每个角色都有自己生命值self.moeny=金钱防御攻击(自我,尸体):#植物都可以攻击僵尸,僵尸的生命值会根据人的攻击而下降尸体。生命值-=自我。侵略性班级尸体:rols=尸体 #僵尸类,属性都是僵尸def __init__(自我,名字,攻击性,生命值):自我。name=name self。侵略性=侵略性# #每个角色都有自己的攻击力自我生活价值=生命值#每个角色都有自己生命值def eat(self,flora):flora。人生_价值-=自我。侵略性#僵尸可以吃植物,植物的生命力会下降等级武器:##武器库def __init__(self,name,price,aggrev,life _ value):自我。name=name self。价格=价格自我。aggrev=aggrev self。life _ value=life _ value def update(self,obj): obj.money -=self.price #购买武器的植物钱少钱少侵略性=自我攻击力增加obj。人生_价值=自我。生命价值#生命值增加def pick(self,obj): obj.life_value -=500 #武器的大招,一次掉血500皮秒=武器(豌豆炮,200,6,100) ##有一个武器可供选择,武器名字叫豌豆炮白菜=Flora(大白菜,10,1000,6000) #创建了大白菜植物僵尸=尸体( z1 , zob1 ,10) #创建了一个僵尸,普通僵尸##植物感觉打不死僵尸,于是升级自己的武器为豌豆炮打印(卷心菜。莫尼,卷心菜。生命值,卷心菜。攻击性)打印(僵尸。生命值)

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: