欢迎回来,建造大师! 🛠️
在现实世界中,玩具工厂并不会从零开始设计每一辆玩具车或每一个奥特曼模型。相反,工程师们会先画出一张 图纸(或者做一个模具),然后工厂用它批量压制成千上万个真实的玩具。
在编程中,我们也使用这种超级高效的技巧来构建游戏角色和场景元素。这被称为 面向对象编程(OOP),它使用 类(Classes) 和 对象(Objects)!
图纸与玩具(类与对象)#
这就是秘密公式:
- 类(Class):图纸(或者饼干模具)。它定义了玩具应该包含什么信息,以及能够执行什么动作。
- 对象(Object):用图纸制作出来的真实 玩具(或者饼干)。
graph TD
Blueprint["📐 类: ToyRobot (图纸)"] -->|制作| Robot1["🤖 robot1 (对象)<br/>名字='拉斯蒂'<br/>颜色='红色'"]
Blueprint -->|制作| Robot2["🤖 robot2 (对象)<br/>名字='闪闪'<br/>颜色='蓝色'"]
在 Python 中编写机器人图纸#
在 Python 中,我们使用单词 class(类)来声明一张图纸。
让我们为玩具机器人建立一张图纸:
class ToyRobot:
# 1. 初始装配(构造函数)
def __init__(self, name, color):
self.name = name
self.color = color
# 2. 执行动作(方法)
def dance(self):
print(self.name + " 这只 " + self.color + " 的机器人正在跳舞! 💃")python代码大揭秘:#
__init__:这是一个特殊的初始装配函数。当你制造一个机器人时,Python 会立即运行这段代码,给它贴上名字和颜色标签。self:这代表当前正在装配或者跳舞的那个“特定的机器人自己”。这能把拉斯蒂的名字和闪闪的名字分得清清楚楚!
批量生产真实机器人(创建对象)#
有了图纸,我们就可以启动生产线了!我们通过调用类名并传入名字和颜色参数来创建真正的对象:
robot1 = ToyRobot("拉斯蒂", "红色")
robot2 = ToyRobot("闪闪", "蓝色")
# 让它们执行动作!
robot1.dance() # 拉斯蒂 这只 红色 的机器人正在跳舞! 💃
robot2.dance() # 闪闪 这只 蓝色 的机器人正在跳舞! 💃python动手试一试! 🎮#
打开你的 Python 编辑器,试着给你的玩具机器人装上激光武器系统吧:
- 在
ToyRobot类中,在dance方法的下方添加一个新的动作方法:
def shoot_laser(self):
print(self.name + " 发射了一道 " + self.color + " 的激光束! ⚡")python- 运行代码,并让两个机器人分别发射激光:
robot1.shoot_laser()
robot2.shoot_laser()python你刚刚掌握了 面向对象编程 的精髓!现在,你可以为游戏玩家、装备道具、地图块和怪物设计复杂的图纸,并在需要时把它们批量生产出来。你已经可以开始规划自己的一方天地了!🚀🌍