Python ValueError:randrange()的范围为空(1,1,0)

Python ValueError:randrange()的范围为空(1,1,0),python,random,Python,Random,我写的是从用户那里得到的命中数字的百分比,并检查它是否命中该数字, 并返回true或false。 但我还是犯了这个错误 ValueError: empty range for randrange() (1,1, 0) 你能帮我吗 def PercentConvertion(Percent): IntPercent = int(Percent / 100) Chance = random.randint(1,IntPercent) purpose = int(IntPercent / 2) hi

我写的是从用户那里得到的命中数字的百分比,并检查它是否命中该数字, 并返回true或false。 但我还是犯了这个错误

ValueError: empty range for randrange() (1,1, 0)
你能帮我吗

def PercentConvertion(Percent):
IntPercent = int(Percent / 100)
Chance = random.randint(1,IntPercent)
purpose = int(IntPercent / 2)
hit = None
if Chance == purpose:
    hit = True
else:
    hit = False
return hit

您的起始号码是1,结束号码是1。因此,您正在询问1和1之间的任何数字。但是,1和1之间没有数字,因此存在错误。这就像要一个介于2和2之间的数字:没有。因此,您会得到错误,因为它无法生成任何数字。为了使randrange正常工作,第一个数字必须至少比第二个数字少2个或多2个,例如,
randrange(1,3,0)
random。当我们设置stop>start时,randint(开始,停止)为真


PercentConvertion(10)然后IntPercent为0,因此函数显示ValueError。

代码中的格式是否正确?顺便说一句,return Chance==purpose可以完全替换结尾的6行。