關於python物件導向初探範例程式碼

來源:互聯網
上載者:User
這篇文章詳解關於python物件導向初探範例程式碼

import randomclass 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 += astepclass 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 = pointif __name__ == '__main__':    gm = GameMap()    worm = Worm(gm)    ant = Ant(gm)    while not gm.catched():        worm.jump()        ant.jump()

<br>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.