2

我目前使用 python 3.3.2 并且正在制作基于文本的游戏。我试图让游戏在你攻击时随机选择。这是受影响的代码部分

        # North hand in hole
        if hand_in_hole == "Y":
           print ("Inside you brush aside cobwebs that must of not been moved in years. Sudenly somthing move against your skin. Do you remove your hand from the hole? Y/N")
           keep_handin_hole = input()
           #North/hand in hole/keep it in
           if keep_handin_hole == "N":
               print ("A huge spider as large as your fist crawls up your arm. Do you attack it? Y/N")
               attack_spider = input
               #North/hand in hole/keep it in/attack
               if attack_spider == "Y":
                   attack = ['Miss', 'Miss', 'Miss', 'Miss', 'Hit']
                   from random import choice
                   print (choice(attack))

当我运行它时,我得到:

    You must answer all questions in block capitals
    Welcome to maze runner are you ready Y/N?
    Y
    Chose your Name
    Callum
    Well hello Callum You find yourself in a deep dark maze you must escape before the beast      get's you. Are you still ready for the challange? Y/N
    Y
    You find yourself in the middle of the maze with four exits? NORTH/SOUTH/EAST/WEST
    NORTH
    There is a hole in the middle of the wall. Do you put your hand in? Y/N
    Y
    Inside you brush aside cobwebs that must of not been moved in years. Sudenly somthing move against your skin. Do you remove your hand from the hole? Y/N
    N
    A huge spider as large as your fist crawls up your arm. Do you attack it? Y/N
    >>> 

它永远不会随机选择,为什么?

4

1 回答 1

0

您在第二个中缺少括号input()。该行attack_spider = input仅将输入函数分配给一个新名称,而不是实际调用该函数。此外,您可能想要使用raw_input(), 因为input()评估给定的表达式,而您只需要字符串。

于 2013-09-28T08:26:00.383 回答