gpt4 book ai didi

python - 如何从Python的另一个类中获取一些东西?

转载 作者:太空宇宙 更新时间:2023-11-03 18:43:43 24 4
gpt4 key购买 nike

我在 MyGame 类的绘图函数中创建了两个不同的类 OrangesWitches 以及另外一个 MyGame我需要从 Oranges 类中获取位置并将其添加到我的 Witches 类中的位置。例如女巫的新位置=橙色的位置-女巫的位置。我怎样才能做到这一点?

class Orange(object):
def __init__(self, position, image):
self.image = image
self.position = (random.randint(350, 500), random.randint(250, 350))

def draw(self, surface):
surface.blit(self.image, self.position)

class Witch(object):
def __init__(self, position, image):
self.image = image
self.position = (random.randint(0, 760), random.randint(0, 0))
self.position1 = (random.randint(0, 0), random.randint(0, 520))
self.position2 = (random.randint (0, 760), random.randint(480, 520))
self.position3 = (random.randint (730, 760), random.randint(0, 520))

def draw(self, surface):
surface.blit(self.image, self.position)

class MyGame(object):
def draw(self):

最佳答案

你的代码真的很长,但只要减去橙色的位置和女巫类的位置,下面就足够了。您必须为橙色和女巫类别创建一个对象,然后执行以下操作。我不知道你是否还想问其他问题,但从你的问题来看,我只能告诉你这些。

new_orange=Orange(...input parameters...)
new_witch=Witch(...input parameters...)
new_witch.position=new_orange.position-new_witch.position

注意:您拥有的两个位置是元组,因此我建议您查看 map 功能并执行以下操作:

new_witch.position=tuple(map(lambda x,y:x-y,new_orange.position,new_witch.position))

这将为您提供可迭代对象,您可以将其转换为元组,我想将它留给您作为寻找 lambda 和可迭代对象的动力。

关于python - 如何从Python的另一个类中获取一些东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20008948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com