内容回顾

递归练习

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. 【九度OJ】题目1109:连通图 解题报告

    [九度OJ]题目1109:连通图 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1109 题目描述: 给定一个无向图和其中的 ...

  2. 【LeetCode】329. Longest Increasing Path in a Matrix 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址: https://leetcode.com/problems/longest- ...

  3. 【LeetCode】785. Is Graph Bipartite? 解题报告(Python)

    [LeetCode]785. Is Graph Bipartite? 解题报告(Python) 作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu. ...

  4. Docker 与 K8S学习笔记(四)—— Dockerfile的编写

    在上一篇中我们简单介绍了Docker镜像的获取与使用,其中在镜像制作中提到在实际使用中一定要用Dockerfile方式去创建镜像而不要用docker commit方式,那么我们该如何编写Dockerf ...

  5. A New Defense Against Adversarial Images: Turning a Weakness into a Strength

    目录 概 主要内容 准则1 准则2 总策略 Hu S, Yu T, Guo C, et al. A New Defense Against Adversarial Images: Turning a ...

  6. 离线版centos8环境部署迁移监控操作笔记

    嗨咯,前两天总结记录了离线版centos8下docker的部署笔记,今天正好是2021年的最后一天,今天正好坐在本次出差回家的列车上,车上没有上面事做,索性不如把本次离线版centos8环境安装的其他 ...

  7. python中的break 和continue的区别

    break语句可以在循环过程中直接退出循环,而continue语句可以提前结束本轮循环 break的例子如图,当遇到的n为偶数时,直接退出循环,所以打印的结果只有1. continue例子如下图,当遇 ...

  8. shell中的2>/dev/null

    1.文件描述符Linux系统预留可三个文件描述符:0.1和2,他们的意义如下所示:0--标准输入(stdin)1--标准输出(stdout)2--标准错误(stderr) 标准输出--stdout假设 ...

  9. react将HTML字符串解析为HTML标签

    当后台返回的数据是字符串html的话,我们可以利用dangerouslySetInnerHTML属性来把字符串转换成html标签 function showhtml(htmlString){ var ...

  10. 服务性能监控之Micrometer详解

    Micrometer 为基于 JVM 的应用程序的性能监测数据收集提供了一个通用的 API,支持多种度量指标类型,这些指标可以用于观察.警报以及对应用程序当前状态做出响应. 通过添加如下依赖可以将 M ...