zoukankan      html  css  js  c++  java
  • Python——类操作2

    class Role:
    #构造函数 ,初始化
        def __init__(self,name,role,weapon,life_value=100,money=15000): #传参数
            #实例变量(又称属性,或静态属性),内容赋给了实例,作用域就是实例本身
            self.name = name#等价于r1.name=name
            self.role=role
            self.weapon=weapon
            self.__life_value=life_value #私有属性
            self.money=money
    #析构函数
        def __del__(self):
            print ("%s 彻底死了。。。" % self.name)
    
    # 类的方法(功能) 又称动态属性
        def shot(self):
            print ("shooting...")
        def got_shot(self):
            self.__life_value-=50
            print ("ah...,%s got shot...." % self.name)
        def buy_gun(self,gun_name):
            print("%s just bought %s" % (self.name,gun_name))
        def show_status(self):
            print ("name: %s weapon: %s life_value: %s" % (self.name,self.weapon,self.__life_value))
    
    #把一个类变成一个具体对象的过程叫实例化(初始化一个类,造了一个对象)
    r1=Role('Alex','police','AK47') #等价于Role(r1,'Alex','police','AK47')
    r1.name='abc123' #改变属性,能够改变
    r1.bullet_prove=True #添加了一个新属性
    print(r1.bullet_prove) #能够输出
    r2=Role('Jack','terrorist','B22')
    r1.buy_gun("AK47")
    r1.got_shot() #Role.got_shot(r1)
    r2.got_shot()
    print(r1.show_status())
    r1.got_shot()
    print(r1.show_status())
    '''
    #构造(函数)方法__init__()传参数
    构造函数__init__()
    作用:在实例化时做一些类的初始化工作
    
    """
    r1=Role.__init__()    return一个内存地址
    r1=Role(r1,"Alex","Police","15000")
    r1.name="Alex"
    r1.role="Police"
    r1.money=15000
    """
    #变量self理解
    '''
    '''
    类变量和实例化变量的区别:
    先检测是不是实例变量,然后在找类变量
    '''
    """
    
    #析构函数 __del__()
    作用:实例释放,用于收尾工作,关闭一些数据库打开的临时文件
    #私有属性“ __变量名”   私有方法一样
    
    """
  • 相关阅读:
    四则运算
    四则运算二
    学习进度条
    四则运算一
    课堂测试七
    问题与思考6
    问题与思考5
    问题与思考04
    Android SDK 目录说明
    如何判断视频的比例(4:3/16:9)和分辨率?
  • 原文地址:https://www.cnblogs.com/zhaoxiaoxue/p/11190097.html
Copyright © 2011-2022 走看看