改成这样
class fooclass(object):
nm = ''
version = 0.1
_weight = 0
def __init__(self, nm = 'hello'):
self.name = nm
print('your name is ' + self.name)
def showname(self):
print(self.nm)
def add(self, x):
return(x + x)
if __name__=="__main__":
foo = fooclass()
foo.showname()
init方法写错了
所以没有初始化类属性
所以你的name是空字符
构造函数的名称是__init__,左右各有两个下划线。
init方法写错了,应该是__init__,注意是两个下划线
这个问题我也遇到过,首先你输入的是下划线,只不过要连输两次就可以了从“_”变成“__”就行了