内容回顾

递归练习

sys

os

logging

shutil

函数结束啦

今日内容

面向对象

  • 楔子:做一个人狗大战的游戏

    • 技能要有归属感,人是人,狗是狗,技能的函数要写在对应函数内部,闭包。
  • 复杂的,拥有开放式结局的程序 比较适合使用面向对象开发

    • 比如游戏
  • #先来定义模子,用来描述一类事物
    #具有相同的属性和动作
    class Person: #类名
    def __init__(self,name,sex,job,hp,weapon,ad):
    #必须叫这个名字,所有的在一个具体的人物出现之后拥有的属性
    #都可以写在这里
    self.name=name
    self.sex=sex
    self.job=job
    self.level=0
    self.hp=hp
    self.weapon=weapon
    self.ad=ad
    print(self,self.__dict__) # 类名()会自动调用其中的__init__方法
    汤达人=Person('汤达人','男','战士',1000,'大剑',220) # 汤达人 就是对象 这个式子就是类获取对象的过程,实例化
    大胖=Person('大胖','男','弓箭手',700,'弓箭',140)
    二胖=Person('二胖','男','炸弹人',700,'炸弹',200)
    三胖=Person('三胖','女','法师',750,'月火术',160) 汤达人.money=100000 #属性的增加
    print(汤达人.__dict__)
    del 汤达人.money #属性的删除
    print(汤达人.__dict__)
  • 实例化所经历的步骤

    • 1.类名()之后的第一个事:开辟一块内存空间
    • 2.调用__init__方法,把空间的内存地址作为self参数传递到函数内部
    • 3.所有的这个对象所需要使用的属性,都需要和self关联
    • 4.执行完__init__方法中的逻辑后,self变量会自动返回到调用处。
    class Dog:    #类名
    def __init__(self,name,hp,kind,ad):
    #必须叫这个名字,所有的在一个具体的人物出现之后拥有的属性
    #都可以写在这里
    self.name=name
    self.hp=hp
    self.kind=kind
    self.ad=ad
    print(self,self.__dict__)
  • 在类中定义和调用方法

    • 用函数定义的方式即可,参数的第一个位置是self

今日总结

面向对象初识

明日学习

面向对象的命名空间

代码总行数2400+42=2442行

python22day的更多相关文章

随机推荐

  1. 【LeetCode】101. Symmetric Tree 对称二叉树(Java & Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 DFS BFS 日期 [LeetCode] 题目地址 ...

  2. Description has only two Sentences(hdu3307)

    Description has only two Sentences Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/327 ...

  3. Java代码性能优化

    (1)在合适的场合使用单例 使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面: 控制资源的使用,通过线程同步来控制资源的并 ...

  4. 一个简单的js时钟

    演示地址 代码 <html> <head> <title> Nonove js clock 时钟 </title> <script type=&q ...

  5. A Tutorial on Energy-Based Learning

    目录 概 主要内容 损失函数 Energy Loss Generalized Perceptron Loss Generalized Margin Loss Hinge Loss Log Loss L ...

  6. Proximal Algorithms 1 介绍

    目录 定义 解释 图形解释 梯度解释 一个简单的例子 Proximal Algorithms 定义 令\(f: \mathrm{R}^n \rightarrow \mathrm{R} \cup \{+ ...

  7. [转]opencv2早期调用函数

    1.cvLoadImage:将图像文件加载至内存: 2.cvNamedWindow:在屏幕上创建一个窗口: 3.cvShowImage:在一个已创建好的窗口中显示图像: 4.cvWaitKey:使程序 ...

  8. Java初学者作业——简单程序根据用户输入的会员类型以及购物金额,判断是否能够享受活动优惠

    返回本章节 返回作业目录 需求说明: 超市周年庆举行购物满减活动,编写Java程序,根据用户输入的会员类型以及购物金额,判断是否能够享受活动优惠,会员类型的输入不限制大小写.具体获取规则:若为VIP会 ...

  9. Java初学者作业——编写JAVA程序,根据用户输入课程名称,输出对应课程的简介,各门课程的简介见表

    返回本章节 返回作业目录 需求说明: 编写JAVA程序,根据用户输入课程名称,输出对应课程的简介,各门课程的简介见表 课程名称 课程简介 JAVA课程 JAVA语言是目前最流行的编写语言,在本课程中将 ...

  10. Ranger-Yarn插件安装

    Ranger-Yarn插件ranger-0.6.0-yarn-plugin安装到Yarn的所有ResourceManager节点, 其他的NodeManager节点不需要安装. 登陆hdfs安装的用户 ...