import调用自己创建的函数person,调用的函数显示的是灰色的
inheritance.py代码:
#继承
from student import student
student1=student('小白','15','天天小学')
student1.print_name()
person.py代码:
class person:
def __init__(self,name,age):
self.name=name
self.age=age
def print_name(self):
print(self.name)
def print_age(self):
print(self.age)
student.py代码
from person import person
class student:
def __init__(self,name,age,school,):
self.name=name
self.age=age
self.school=school
def print_school(self):
print(self.school)
运行结果: File "k:\python\py\inheritance.py", line 4, in
student1.print_name()
报错内容:AttributeError: 'student' object has no attribute 'print_name'
我的解答思路和尝试过的方法 :尝试过使用绝对路径,但是还是无效,盘符报错
我想要达到的结果:显示学生的名字
。。。。。
你在inheritance.py中是导入student类,不是继承。
student没有print_name方法啊;你只是在student.py导入person类,student又不是继承person类,所有它没有print_name方法。
这样才是继承:class 子类(父类)
class student(person):
def __init__(self,name,age,school,):
Shape.__init__(self) #继承父类的构造方法
self.name=name
self.age=age
self.school=school
def print_school(self):
print(self.school)
你在inheritance中就可以调用student继承person的print_name方法