Python新手求助:生成指定范围随机数并赋值时遇类型错误
解决生成20-30随机数的类型错误问题
嘿,我完全懂你作为Python新手的苦恼!那些Stack上过于复杂的答案真的没必要,咱们直接搞定你的需求——生成20到30之间的随机数赋值给shotDistance,还顺便解决你遇到的类型错误~
为什么会出现TypeError?
你遇到的TypeError: unsupported operand type(s) for -: 'int' and 'method',大概率是调用随机数方法时忘记加括号了!比如你可能写了random.randint而不是random.randint()——前者是引用方法本身(是一个method对象),不是调用它生成数值,当你试图把它和整数做运算时,自然会报错。
正确的代码实现
直接用random.randint()就能生成包含20和30的整数随机数,一步到位:
# 首先导入random模块,这是生成随机数的基础 import random # 生成20到30之间(包含两端)的随机整数,赋值给shotDistance shotDistance = random.randint(20, 30) # 可以打印看看结果,验证是否正确 print(shotDistance)
如果你的需求是生成不包含30的20到30之间的随机数,那就换成random.randrange(20, 30),它的范围是左闭右开的。
这样写就不会再碰到类型错误啦,是不是简单多了😉
内容的提问来源于stack exchange,提问作者Jasmine
相关产品推荐
相关产品推荐

