出现这种错误,就是class中init函数中的参数没有赋值。
如:【下面的是错误的代码】
__meta__ = type
class ff:
def __init__(self, n):
self.xxx = n
self.yyy = 'asdf'
self.zzz = [1,2,3]
def asdf(self,x):
self.ggg = x
a = ff() #必须先写入初始化值,否则就会出现错误
print(a.zzz)
如上面代码注释的那一行所写,你必须写入n的值。
把a = ff()改成a = ff(1), 这样不仅给n赋了个值,这样还不报错。
【初始化的函数必须赋值,而其他函数不需要赋值,如果想赋值那就a.asdf('ppppp'),这样就表明实例a的ggg为‘ppppp’】
如果没有def __init__(self, n):也就是没有init的函数的话,你就可以不用赋值,哪怕里面有未知量n
更多推荐
python错误:TypeError: __init__() missing 1 required positional argument: ‘n‘
发布评论