关于python面向对象初探示例代码
程序员文章站
2022-04-01 10:54:07
...
这篇文章详解关于python面向对象初探示例代码
import random class Sprite: step = [-2,+2,-3,+3] def __init__(self,gm,point=None): self.gm = gm if point is None: self.point = random.randint(0,20) else: self.point = point def jump(self): astep = random.choice(Sprite.step) if 0 <= self.point + astep <= 20: self.point += astep class Ant(Sprite): def __init__(self,gm,point=None): super().__init__(gm,point) self.gm.set_point('ant',self.point) def jump(self): super().jump() self.gm.set_point('ant',self.point) class Worm(Sprite): def __init__(self,gm,point=None): super().__init__(gm,point) self.gm.set_point('worm',self.point) def jump(self): super().jump() self.gm.set_point('worm',self.point) class GameMap: def __init__(self): self.ant_point = None self.worm_point = None def catched(self): print('ant:',self.ant_point,'worm:',self.worm_point) if self.ant_point is not None and self.worm_point is not None and self.ant_point == self.worm_point: return True def set_point(self,src,point): if src == 'ant': self.ant_point = point if src == 'worm': self.worm_point = point if __name__ == '__main__': gm = GameMap() worm = Worm(gm) ant = Ant(gm) while not gm.catched(): worm.jump() ant.jump()
<br>
以上就是关于python面向对象初探示例代码的详细内容,更多请关注其它相关文章!
上一篇: 浏览器的进程与线程的介绍