机器人不只是孤立存在的;它们会协同工作。
在 Python 中,你可以把一个 对象 传进函数(或方法),就像传进数字一样。
对象交互
如果 alice 和 bob 都是机器人,alice 可以和 bob 互动。
class Healer:
def heal(self, target):
print("正在治疗 " + target.name)
cleric = Healer()
warrior = Hero("Conan")
# 把 warrior 对象传给 heal 方法
cleric.heal(warrior) # "正在治疗 Conan"
1
定义问候
定义 def greet(self, target):。这里,target 将会是另一个机器人对象。
2
使用两个对象
在方法内部,你可以同时访问 self.name(问候者)和 target.name(朋友)。打印 self.name 向 target.name 问好。
3
建立连接
调用 r1.greet(r2)。我们把整一个 r2 对象传进了 r1 的世界里!
这是游戏开发的基础。Player(玩家)攻击 Enemy(敌人)。Car(车)撞上 Wall(墙)。对象与对象之间的交互!
参考答案点击展开点击收起
点击展开点击收起
参考答案:
class Robot:
def __init__(self, name):
self.name = name
def greet(self, target):
print(self.name + " says hello to " + target.name)
r1 = Robot("HoppyBot")
r2 = Robot("PyBot")
r1.greet(r2)高级技巧想更进一步?点击展开点击收起
F. 无限的交互
- 你可以把对象传给对象。
- 你可以把对象放进列表里 (
team = [r1, r2])。 - 你甚至可以把对象放进其他对象里面 (
r1.best_friend = r2)。 - 这就是构建复杂软件的方式!
Loading...
终端输出
Terminal
Ready to run...