1. # -*-coding:utf-8-*-
    __author__ = "logan.xu"

    ###构造函数
    #class Role:
    # n = 123
    # # 类变量 比如 n = 123
    # name = "我是类name"
    #
    # # 实例变量
    # def __init__(self, name, role, weapon, life_value=100, money=15000):
    # # 构造函数
    # # 作用是在实例化时,做一些类的初始化的工作
    # self.name = name # 实例变量(静态属性),作用域就是实例本身
    # self.role = role
    # self.weapon = weapon
    # self.life_value = life_value
    # self.money = money
    #
    # def shot(self): # 类的方法,功能(动态属性)
    # print("shooting...")
    #
    # def got_shot(self):
    # print("ah....,I got shot...")
    #
    # def buy_gun(self, gun_name):
    # print("%s just bought %s" % (self.name, gun_name))
    #
    #
    #print(Role.n)
    #
    #r1 = Role('Alex', 'police', 'AK47')
    ## 把一个类变成一个具体对象的过程叫实例化(初始化一个类))
    ## r1.got_shot()
    ## r1.buy_gun("B51")
    #r1.name = "陈冠希" # 修改r1的名字
    #r1.bullet_prove = True # 给角色添加装备防弹衣
    ## print(r1.n,r1.name,r1.bullet_prove)
    #r1.n = "改类变量"
    ## del r1.weapon
    #print("r1:", r1.weapon, r1.n)
    #
    ## Role.n = "小龙女"
    #
    #r2 = Role('Jack', 'terrorist', 'B22')
    ## 生成一个角色称为role类的实例
    #r2.name = "古天乐" ##修改r2的名字
    ## print(r2.n,r2.name)
    #print("r2:", r2.name, r2.n)
    ## r1.buy_gun("AK47")
    #
    #Role.n = "小龙女"
    #print(r1.n, r2.n)

    # 返回结果为
    # ah....,I got shot...
    # Alex just bought B51
    # Alex just bought AK47
    #

    ###析构函数

    class Role:
    n = 123
    # 类变量 比如 n = 123
    name = "我是类name"

    # 实例变量
    def __init__(self, name, role, weapon, life_value=100, money=15000): # 构造函数
    ##作用是在实例化时,做一些类的初始化的工作
    #self.name = name # 实例变量(静态属性)
    self.name = name # 实例变量(静态属性),作用域就是实例本身
    self.role = role
    self.weapon = weapon
    self.__life_value = life_value #内部访问life_value 私有属性
    self.money = money

    def __del__(self):
    pass #print("%s彻底死了。。。。啊!!" %self.name)

    def show_status(self):
    print("name:%s weapon:%s life_val:%s" %(self.name,self.weapon,self.__life_value))

    def shot(self): # 类的方法,功能(动态属性)
    print("shooting...")

    def got_shot(self):
    self.__life_value -= 50
    print("%s:ah....,I got shot..."%self.name)

    def buy_gun(self, gun_name):
    print("%s just bought %s" % (self.name, gun_name))

    r1 = Role('Alex', 'police', 'AK47')
    # 把一个类变成一个具体对象的过程叫实例化(初始化一个类))
    # r1.got_shot()
    # r1.buy_gun("B51")
    r1.buy_gun("AK47")
    r1.got_shot()
    print(r1.show_status())

    r2 = Role('jack','terrorist','B22')
    r2.got_shot()

    >>>>>>>>>>>>>>>>>>>>>>>>>.

Alex just bought AK47
Alex:ah....,I got shot...
name:Alex weapon:AK47 life_val:50
None
jack:ah....,I got shot...



cs_play的更多相关文章

随机推荐

  1. Python基础之subprocess

    前言 subprocess这个函数很好用,类似于控制台执行,功能很多,今天先介绍subprocess调用exe,并行调用两个或两个以上的exe. Subprocess调用exe 调用exe有几种方式, ...

  2. C实现奇偶校验

    奇偶校验原理(来自百度百科):奇偶校验(Parity Check)是一种校验代码传输正确性的方法.根据被传输的一组二进制代码的数位中"1"的个数是奇数或偶数来进行校验.采用奇数的称 ...

  3. 【阿菜用工具】Slither:Solidity静态分析框架

    工具简介 Slither 是一个 python3 开发,用于检测智能合约(solidity)漏洞的静态分析框架. Slither 的 Github 地址:https://github.com/cryt ...

  4. Zabbix中Agent自动注册

    目录 Active agent自动注册 以下情况,自动注册会自动运行: 配置 服务端配置 客户端配置 Active agent自动注册 zabbix Active agent可以实现自动注册,进而服务 ...

  5. 搭建SSM基础环境>基于idea

    目录 搭建SSM基础环境 创建一个Web项目 导入所需要的jar包 在项目目录下创建一个Resources文件夹并设置为类路径 在src目录下创建项目的初始文件夹目录 在resources文件夹下创建 ...

  6. 作为Java开发工程师,如何高效优雅地编写接口文档

    作为一名优秀的Java开发工程师,编写接口文档向来是一件很头疼的事情.本来就被bug纠缠的很累了,你还让我干这? 其实,你可以试试ApiPost. ApiPost的定位是Postman+Swagger ...

  7. Windows协议 LDAP篇 - Actite Directory

    LDAP简介 先说下ldap,轻量目录访问协议.LDAP就是设计用来访问目录数据库的一个协议.也就是为了能访问目录数据库,ldap是其中一种协议 LDAP的基本模型 目录树:在一个目录服务系统中,整个 ...

  8. Build a Beautiful oh-my-zsh Themes

    Selection Criteria double line; provide username, hostname, current directory; provide information o ...

  9. Django CBV装饰器 中间件 auth模块 CSRF跨站请求

    CBV添加装饰器 给CBV添加装饰器有三种方法,三种方法都需要导入模块: from django.utils.decorators import method_decorator 第一种直接在方法上面 ...

  10. NOIP 模拟 7 回家

    题解 题目 第一眼,板子题,不就是一个缩点吗?后来一想不对,哪有这么傻的出题人呢,出个这水题. 一想,不对,不仅要求割点,还要判断这个割点是否在搜索树 \(n\) 的祖先上.想到这后,我哈哈大笑,还想 ...