Sublime文本2:编译python问题



{

import random
random.seed(0)
def rollDie():
    """returns a randomly chosen int between 1 and 6"""
    return random.choice([1,2,3,4,5,6])
}

所以我遇到的问题是,当我用"ctrl+b"编译这个python文件,并试图通过python控制台执行函数rollDie()时,它会给我一个错误。

追踪(最近一次通话):文件",第1行,在名称错误:名称"rollDie"未定义

但当我使用execfile("架构1.py")时,即我在控制台中的文件名。然后它执行得很好。只是当我使用ctrl+B(普通构建)时,它会抛出回溯错误。我知道这是一个小错误,但似乎无法理解。

我想要的是正常构建我的文件,然后从控制台正常调用函数,而不是使用execfile命令再次编译。

我试过了,效果很好。需要注意的是-->使用choice时不需要提供种子,它会"随机"从列表中选择一个元素。使用range()可以生成与[1,2,3,4,5,6]相同的列表。记住,如果你写range(1,6),range()不会生成1-6。最后一个数字被排除在外。最后,如果你写了一个方法并想使用它,记得"调用"它

from random import choice
def roll_die():
    return choice(range(1,7))
print roll_die()

最新更新