78.添加和获取对象的属性

添加和获取对象的属性

class Hero(object):
    """定义了一个英雄类,可以移动和攻击"""
    def move(self):
        """实例方法"""
        print("正在前往事发地点...")

    def attack(self):
        """实例方法"""
        print("发出了一招强力的普通攻击...")

# 实例化了一个英雄对象 泰达米尔
taidamier = Hero()

# 给对象添加属性,以及对应的属性值
taidamier.name = "泰达米尔"  # 姓名
taidamier.hp = 2600  # 生命值
taidamier.atk = 450  # 攻击力
taidamier.armor = 200  # 护甲值

# 通过.成员选择运算符,获取对象的属性值
print("英雄 %s 的生命值 :%d" % (taidamier.name, taidamier.hp))
print("英雄 %s 的攻击力 :%d" % (taidamier.name, taidamier.atk))
print("英雄 %s 的护甲值 :%d" % (taidamier.name, taidamier.armor))

# 通过.成员选择运算符,获取对象的实例方法
taidamier.move()
taidamier.attack()

问题:

对象创建并添加属性后,能否在类的实例方法里获取这些属性呢?如果可以的话,应该通过什么方式?

# # 名字 年龄 血量 攻击力
# # 悟空
# wk_dict = {"name": "悟空", "age": 500, "hp": 3000, "atk": 400}
# wk_dict["test"] = "ceshi"
# print(wk_dict["name"])
# # 鲁班
# lb_dict = {"name": "鲁班", "age": 100, "hp": 2300, "atk": 500}
# print(lb_dict["age"])

# 自定义英雄类
class Hero(object):
    pass

# 创建对象
wk = Hero()
# 添加属性
# 格式: 对象名.属性名 = 数值
wk.name = "悟空"
wk.age = 500
wk.hp = 3000
wk.atk = 400
# 获取属性
print(wk.name)

# 创建对象
lb = Hero()
# 添加属性 名字
lb.name = "鲁班"
原文地址:https://www.cnblogs.com/kangwenju/p/12866483.html