标签:%s 继承 class def 删除 elf 一个 ini 结果
class 的三大特性
封装:内部调用对于外部用户是透明的
继承: 在分类里的属性,方法被自动继承
多态:调用这个功能,可以使多个类同时执行
r1 = Role(r1, ‘Alex‘, ‘Police‘, ‘15000‘) #实际上把r1赋给了self
self.name = ‘Alex‘ # r1.name = ‘Alex‘
self.role = ‘Police‘ # r1.role = ‘Police‘
self.money = 15000 # r1.money = 15000
r1.buy_guy() # Role.buy_guy(r1)
第一个例子
class Dog:
def __init__(self, name):
self.name = name
def bulk(self):
print(‘%s : wa wa’%self.name)
dog = Dog(‘xiaoming‘)
dog.bulk()
第二个例子 #建立游戏角色
class Role(object):
n = 123 #类变量
name = 123
def __init__(self, name, role, weapon, life_value = 100, money = 20000) :
self.name = name #实例变量
self.role = role
self.weapon = weapon
self.__life_value = life_value #函数的私有属性,外部不可以更改,只限于内部调用,可以打印出来
self.money = money
def __shot(self): # 私有函数,外部不可调用
print(‘shoting‘)
def got_shot(self):
self.__life_value -= 50
def buy_gun(self):
print(‘%s buy %s‘%(self.name, self.weapon)
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.name = ‘xiaoming‘ #更改实例变量的name
del r1.name #删除实例变量的name
del r1 #删除实例r1
print(r1.n) #输出结果123 实例中没有该变量就去找类变量
print(r1.name) #输出结果 alex 实例中有该变量就用实例中的变量
r1.got_shot()
r1.show_status()
标签:%s 继承 class def 删除 elf 一个 ini 结果
原文地址:https://www.cnblogs.com/my-love-is-python/p/9093694.html