2014-10-10 44 views
-3

为什么不能在这个函数中使用randrange?在我自己的函数中使用随机库函数python 3

import random 

print (random.randrange(0,4)) 

def random(dice): 
    dice_one = random.randrange(1,3) 
    return (dice_one) 


print (random(4)) 

这是错误

line 6, in random 
    dice_one = random.randrange(1,3) 
    AttributeError: 'function' object has no attribute 'randrange' 

感谢所有帮助

+7

因为你已经用你自己的函数替换了模块'random',也叫'random' - 为什么? – jonrsharpe 2014-10-10 14:18:19

+0

我明白了,我没有意识到我会随机取代。我想我会加入它。我明白我现在做错了什么。谢谢 – user3715055 2014-10-10 14:40:19

回答

0

的Python认为你想打电话给你自己的随机函数的方法,因为你把它命名一样的随机模块。改变你的函数名称是别的,它应该没问题。

def chance(dice): 
    dice_one = random.randrange(1,3) 
    return dice_one 

print (chance(4)) 

此外,不知道你想用'骰子'的论点。如果这意味着要对模具的边数,请尝试:

def chance(dice): 
    dice_one = random.randrange(1,dice) 
    return dice_one 
0

搞笑,其实我不能够理解你希望哪些类型的输出,但无论从那个我已经明白程序的解决方案这个 !

import random 

    print random.randrange(0,4) 

    def random_number(dice): 
     dice_one = random.randrange(1,3) 
     return dice_one 

    print random_number(4)