Python - AttributeError:'int'对象没有属性'randint'

时间:2013-06-17 17:38:34

标签: random python-3.x attributeerror

作为python课程的一部分,我正在执行的任务之一是生成1到10 100,000次之间的随机数,并计算每个数字出现的次数。这是我为此任务编写的代码:

    import random

    one = 0
    two = 0
    three = 0
    four = 0
    five = 0
    six = 0
    seven = 0
    eight = 0
    nine = 0
    ten = 0
    count = 0

    while count < 100000:
        random = random.randint(1, 10)

        if random == 1:
            one += 1
        elif random == 2:
            two += 1
        elif random == 3:
            three += 1
        elif random == 4:
            four += 1
        elif random == 5:
            five += 1
        elif random == 6:
            six += 1
        elif random == 7:
            seven += 1
        elif random == 8:
            eight += 1
        elif random == 9:
            nine += 1
        else:
            ten += 1

    count += 1

    print("1 occured " + str(one) + " times")
    print("2 occured " + str(two) + " times")
    print("3 occured " + str(three) + " times")
    print("4 occured " + str(four) + " times")
    print("5 occured " + str(five) + " times")
    print("6 occured " + str(six) + " times")
    print("7 occured " + str(seven) + " times")
    print("8 occured " + str(eight) + " times")
    print("9 occured " + str(nine) + " times")
    print("10 occured " + str(ten) + " times")

但是我得到一个AttributeError说:

    Traceback (most recent call last):
      File "J:/Python/Extension Task - Random Numbers.py", line 19, in <module>
        random = random.randint(1, 10)
    AttributeError: 'int' object has no attribute 'randint'

我已经尝试更改标题,以便它不包含随机字样,但仍然不起作用,我花费的时间比健康寻找解决方案要长得多。

1 个答案:

答案 0 :(得分:3)

您已命名其中一个变量random,这会影响您尝试使用的模块的名称:

random = random.randint(1, 10)

在此行之后,random是您的随机数,而不是random模块。为此变量使用不同的名称!