Python没有从列表中选择随机

时间:2013-09-28 08:15:35

标签: random python-3.x

我目前正在使用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
    >>> 

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

1 个答案:

答案 0 :(得分:0)

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