导入'随机'和' pylab'在一个文件中没有工作

时间:2017-03-19 12:12:03

标签: python python-2.7

我有一个Python脚本,我需要导入python标准random库并导入pylab函数。我写了一个简单的程序来使用' random'在一个工作文件的脚本中,但是一旦我添加了pylab的导入,它就会停止运行。见下文。

使用random的示例脚本:

import random
#from pylab import *

def getRandomAngle():
    return random.randint(0,360)

def getRandomAngleList(num):
    angle_list = []
    for i in range(num):
        angle_list.append(getRandomAngle())
    return angle_list

#Call randomAngle method to print a random angle
randomAngleList = getRandomAngleList(5)
print randomAngleList

打印预期输出:

[96, 163, 212, 344, 77]

现在,Uncomment在上述程序的line 2中导入pylab,然后抛出以下错误 -

AttributeError: 'builtin_function_or_method' object has no attribute 'randint'

有谁可以帮我理解,如何包含两种进口产品?我相信pylab中有一些随机函数会导致问题,但不确定。我使用的是Python 2.7版本。

1 个答案:

答案 0 :(得分:2)

问题是pylab有一个名为random的函数,这将覆盖您导入的random模块。

解决方案是避免from pylab import *而是说

import random
import pylab

在需要时为pylab个函数添加前缀。

在使用from ... import *的python中可能会有问题,因为这可能会覆盖代码中已定义的函数/类/变量。