如下代码,总是报错
class Chinese:
def __init__(self,hair_color,skin):
self.hair_color = hair_color
self.skin = skin
def hair(self):
print('我的头发是%s'%(self.hair_color))
def skin(self):
print('我的皮肤是%s'%(self.skin))
wang = Chinese('黑色','黄色')
wang.hair_()
wang.skin()
发生异常: TypeError
'str' object is not callable
File "D:\-100学习类标签\-103编程\103=编程=what have done=编程成果\test\.vscode\1.py", line 14, in <module>
wang.hair_color()
在百度查是与系统预设的名字冲突了,但是改了名字还是不行
解决报错
#!/bin/env python
class Chinese:
def __init__(self,hair_color,skin):
self.hair_color = hair_color
self.skin = skin
def hair(self):
print('我的头发是%s'%(self.hair_color))
def skin2(self):
print('我的皮肤是%s'%(self.skin))
wang = Chinese('黑色','黄色')
wang.hair()
wang.skin2()
你11行的函数名skin和 参数skin重复了。
函数和成员变量重名了
class Chinese:
def __init__(self, hair_color, skin):
self.hair_color = hair_color
self.skin = skin
def hair(self):
print('我的头发是%s' % (self.hair_color))
def myskin(self):
print('我的皮肤是%s' % (self.skin))
wang = Chinese('黑色', '黄色')
wang.hair()
wang.myskin()