最近又不顾正业了,在尝试使用Python开发一个小工具,前几天一直纠结目录间的调用问题。通过查找一些资料和瞎猫碰死耗子的精神。解决了!哇哈哈!昨天按照进度,开发model层。可能是以往的思路的局限,所以涉及到类的继承与实现。今天按照另一种的方式去实现。
常规思路,代码如下:
#!F:/python/python class school(object): """docstring for school""" def __init__(self, name,age): super(school, self).__init__() self.name = name self.age = age def showMessage(self): return ("用户名:%s;密码:"% self.name,self.age) class teacher(school): """docstring for teacher""" def __init__(self, name,age,sex): #super(teacher, self).__init__() school.__init__(self,name,age) self.sex = sex def showMessage(self): print(school.showMessage(self)) print(';性别:'+self.sex) obj=teacher('willa',18,'female') obj.showMessage()
效果如下:
写到这里网上其他同仁都是按照这个思路讲解类的继承。可能是开发习惯不同,在一个文件中写两个class总感觉怪怪的。下一步文件拆分。
目录结果:
ObjectCode.py 代码如下:
#!F:/python/python class school(object): """docstring for school""" def __init__(self, name,age): super(school, self).__init__() self.name = name self.age = age def showMessage(self): return ("用户名:%s;密码:"% self.name,self.age)
Teacher.py 代码如下:
#!F:/python/python import ObjectCode class teacher(ObjectCode.school): """docstring for teacher""" def __init__(self, name,age,sex): #super(teacher, self).__init__() ObjectCode.school.__init__(self,name,age) self.sex = sex def showMessage(self): print(ObjectCode.school.showMessage(self)) print(';性别:'+self.sex) obj=teacher('willa',18,'female') obj.showMessage()
执行结果与上面的效果相同。拆分文件成功。