Python自定义函数报错求助:TypeError: open()参数类型错误
问题解决:简化random.randint的自定义函数报错修复
你的问题核心是三个错误:
- 误用了
open()函数:这个函数是用来读写文件的,和生成随机数完全没关系,直接删掉这部分就行 - 调用
ra.randint()时没传参数:randint()需要两个整数参数(范围的上下限),你得把函数接收的a和b传进去 - 函数没有返回生成的结果:你写了
return但没返回具体值,最后调用函数得到的会是None
修正后的代码如下:
import random as ra def r(a, b): # 直接调用randint并传入参数,返回结果 return ra.randint(a, b) w = r(1, 100) print(w)
这段代码做了这些调整:
- 删掉了完全多余的
with open(...)代码块 - 在
ra.randint()里传入了函数的参数a和b,指定随机数范围 - 直接返回
ra.randint()的结果,也可以先赋值再返回(比如result = ra.randint(a,b)然后return result,效果一致)
现在运行代码就能正常生成1到100之间的随机整数了。
内容的提问来源于stack exchange,提问作者Alwma2
相关产品推荐
相关产品推荐

