Sublime text 2:编译问题python

时间:2015-04-03 01:12:59

标签: python build

{

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行,in   NameError:name' rollDie'未定义

但是当我在控制台中使用execfile(' lecture1.py')时,即我的文件名。然后它执行正常。只是当我使用ctrl + B(正常构建)时,它会抛出回溯错误。我知道这在某个地方是一个轻微的错误,但似乎无法得到它。

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

1 个答案:

答案 0 :(得分:0)

我试过这个,它运作得很好。需要注意的事项 - >使用选择时不需要提供种子,它将“随机”从列表中选择一个元素。使用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()