《笨办法学python》加分习题42——我的答案

这是我自己学习的答案,会尽力写的比较好。还望大家能够提出我的不足和错误,谢谢!原文例题# -- coding: utf-8 --from sys import exitfrom random import randintclass Game(object): # 类内初始化,其中新建初始值quips和start def __init__(self, sta
摘要由CSDN通过智能技术生成

这是我自己学习的答案,会尽力写的比较好。还望大家能够提出我的不足和错误,谢谢!

原文例题

# -- coding: utf-8 --
from sys import exit
from random import randint

class Game(object):

    # 类内初始化,其中新建初始值quips和start
    def __init__(self, start):
        self.quips = [
            'You died.',
            'Your mom would...',
            'Such a luser',
            'I have ...'
        ]
        self.start = start

    def play(self):
        next = self.start

        while True:
            print "\n---------------------"
            # 获取对象object的属性或者方法,如果存在打印出来(打印出来的是地址),如果不存在,打印出默认值,默认值可选。
            room = getattr(self, next)
            #指向这个地址的程序
            next = room()

    def death(self):
        # 随机quips列表中的元素
        print self.quips[randint(0, len(self.quips)-1)]
        # 退出并关闭这段内存
        exit(1)

    def central_corridor(self):
        print "The Gothons of..."
        action = raw_input("> ")

        if action == "shoot!":
            print "Quick on the ..."
            return 'death'

        elif action == "dodge!":
            print "Like a world ..."
            return 'death'

        elif action == "te;; a joke":
            print "Lucky for you..."
            return 'laser_weapon_armory'

        else:
            print "DOES NOT COMPUTE!"
            return 'central_corridor'

    def laser_weapon_armory(self):
        print "You do a dive..."
        code = "%d%d%d" % (randint(1,9), randint(1,9), randint(1,9))
        guess = raw_input("[keypad]> ")
        guesses = 0
        while guess != code and guesses <10:
            print "BZZZZEDDDD!"
            guesses += 1
            guess = raw_input("[keypad]> ")

        if guess == code:
            print "The container..."
            return 'the_bridge'
        else:
            print "The lock..."
            return 'death'

    def the_brid
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值