作者:丁木China | 来源:互联网 | 2017-05-14 02:44
这篇文章详解关于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(&#39;ant&#39;,self.point)
def jump(self):
super().jump()
self.gm.set_point(&#39;ant&#39;,self.point)
class Worm(Sprite):
def __init__(self,gm,point=None):
super().__init__(gm,point)
self.gm.set_point(&#39;worm&#39;,self.point)
def jump(self):
super().jump()
self.gm.set_point(&#39;worm&#39;,self.point)
class GameMap:
def __init__(self):
self.ant_point = None
self.worm_point = None
def catched(self):
print(&#39;ant:&#39;,self.ant_point,&#39;worm:&#39;,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 == &#39;ant&#39;:
self.ant_point = point
if src == &#39;worm&#39;:
self.worm_point = point
if __name__ == &#39;__main__&#39;:
gm = GameMap()
worm = Worm(gm)
ant = Ant(gm)
while not gm.catched():
worm.jump()
ant.jump()
以上就是关于python面向对象初探示例代码的详细内容,更多请关注 第一PHP社区 其它相关文章!