为什么我运行该代码时会给我一个NameError?

时间:2019-01-16 08:40:15

标签: python random nameerror

我试图用Python编写一个基于文本的冒险游戏,但是我无法使战斗系统正常工作。

这是我到目前为止所拥有的:

import time   
import random    

battle_chance = 3    
enemies = ['A hoard of Goblins', 'A skeleton army',  'A large troll']
random_index = randrange(len(enemies))

def init_battle():
    while True:
        x = randint(0,5)
        time.sleep(2)
        if x == battle_chance:
            print(enemies[random_index], "Has approached you.\nWhat do you do?")

我总是遇到错误,我不知道该如何解决。

3 个答案:

答案 0 :(得分:1)

  

抛出错误:NameError:未定义名称'randrange'

random_index = randrange(len(enemies))

应该是

random_index = random.randrange(len(enemies))

类似地:

x = randint(0,5)

应该是

x = random.randint(0,5)

或者,您也可以在导入行中添加以下语句:

from random import randrange, randint

答案 1 :(得分:0)

尝试替换这些行:

random_index = random.randrange(len(enemies))

x = random.randint(0, 5)

答案 2 :(得分:0)

只需在代码顶部添加以下行

from random import randrange, randint