Python随机数生成器错误

Python随机数生成器错误

问题描述:

你好,我刚刚开始用Python编程,我只是想做一个RNG,但有一些我不明白的错误。Python随机数生成器错误

下面的代码

import random 
import time 

numbersGenerated = 0 

print('Hello! How many numbers do you want?') 
numbersNeeded = input() 
print('What would you like the minimum for the numbers be?') 
Min = input() 
print('And the maximum?') 
Max = input() 

numbersNeeded = str(numbersNeeded) 
numbersGenerated = str(numbersGenerated) 

while numbersGenerated < numbersNeeded: 
    number = random.randint(Min, Max) 
    number = int(number) 

    numbersGenerated = numbersGenerated + 1 

    print(number) 
    print() 
    time.sleep(2) 

print('All done. Hope to see you again!') 

回溯错误说

File "C:/Python32/Number_Generator.py", line 20, in <module> 
number = random.randint(Min, Max)  
File "C:\Python32\lib\random.py", line 215, in randint 
return self.randrange(a, b+1) 
TypeError: Can't convert 'int' object to str implicitly 

我已经改变了线十三先令也为int但这并没有改变结果。

在Python 3,你应该输入从input显式转换:

Min = int(input()) 

Max = int(input()) 

  1. 你正在做while numbersGenerated < numbersNeedednumbersGeneratednumbersNeeded是字符串,这可能不是你想要什么。

  2. 您在致电random.randint(Min, Max),而MinMax是字符串,它们应该是整数。

  3. 不需要number = int(number),它已经是一个整数。

  4. numbersGenerated = numbersGenerated + 1再次,该变量是一个字符串