# Author kevin_hou
class School(object):
def __init__(self,name,addr):
self.name = name
self.addr = addr
self.students = []
self.staffs = []
def enroll(self,stu_obj):
self.students.append(stu_obj)
print("---------Prepare for student %s enrolling--------"%stu_obj.name)
def hire(self,staff_obj):
self.staffs.append(staff_obj)
print("---------hire a new staff %s--------"%staff_obj.name) class SchoolMember(object):
def __init__(self,name,age,sex):
self.name = name
self.age = age
self.sex = sex
def tell(self):
pass class Teacher(SchoolMember):
def __init__(self,name,age,sex,salary,course):
super(Teacher, self).__init__(name,age,sex)
self.salary = salary
self.course = course
def tell(self):
print(
'''
----------------info of Teachers: %s-------------------
Name: %s
Age: %s
Sex: %s
Salary: %s
Course: %s
'''%(self.name,self.name,self.age,self.sex,self.salary,self.course))
def tech(self):
print("%s is teasching course [%s]"%(self.name,self.course)) class Student(SchoolMember):
def __init__(self,name,age,sex,stu_id,grade):
super(Student, self).__init__(name,age,sex)
self.stu_id = stu_id
self.grade = grade
def tell(self):
print(
'''
----------------info of Students: %s-------------------
Name: %s
Age: %s
Sex: %s
Stu_id: %s
Grade: %s
''' % (self.name,self.name, self.age, self.sex, self.stu_id, self.grade))
def pay_tution(self,amount):
print("%s has paid tution for $s"%(self.name,amount))
school = School("Kevin","Shanghai")
t1 = Teacher("Alex", 22, "M", 1002,"python3")
t2 = Teacher("Jane", 33,"F",800,"C language") s1 = Student("Curry", 22, "M", 1002,"python3")
s2 = Student("Rossal", 33,"M",800,"C language") t1.tell()
# ----------------info
# of
# Teachers: Alex - ------------------
# Name: Alex
# Age: 22
# Sex: M
# Salary: 1002
# Course: python3
s1.tell()
# ----------------info
# of
# Students: Curry - ------------------
# Name: Curry
# Age: 22
# Sex: M
# Stu_id: 1002
# Grade: python3
school.hire(s1) #---------hire a new staff Curry--------
school.enroll(s1) #---------Prepare for student Curry enrolling--------
school.enroll(s2) #---------Prepare for student Rossal enrolling-------- print(school.students) #[<__main__.Student object at 0x0144CC70>, <__main__.Student object at 0x0144CCB0>]
print(school.staffs) #[<__main__.Student object at 0x0144CC70>]

  

Succeed_School的更多相关文章

随机推荐

  1. 基于Linux系统的MariaDB数据库的安装配置

    数据库是指长期存储在计算机内.有组织的和可共享的数据集合.表是数据库存储数据的基本单位,一个表由若干个字段组成 MariaDB 数据库管理系统是 MySQL 的一个分支,主要由开源社区在维护,采用 G ...

  2. 通俗易懂讲解Word2vec的本质

    本文首发于微信公众号「对白的算法屋」,来一起学AI叭 一.Word2vec CBOW(Continuous Bag-of-Words):每个词的含义都由相邻词决定. Skip-gram:依据分布的相似 ...

  3. vue-过滤器(filter)的使用详解

    前言 Vue 允许我们在项目中定义过滤器对我们页面的文本展示进行格式的控制,本文就来总结一下过滤器在项目中的常见使用方法. 正文 1.局部过滤器的注册 (1)无参局部过滤器 <div id=&q ...

  4. vs code使用git---http方式

    1.从git上复制http路径 2.在vs code的工作区新建文件夹 3.选择添加远程储存库 4.输入复制的git路径然后命名远程储存库名称   5.选择从所有远程储存库中拉取分支 6.选择分支,切 ...

  5. python模块--__future__(向上兼容模块)

    py2.7   unicode_literals 将字符串默认视为unicode, 即u'xxx'和'xxx'将是一样的, 而再想表示字节需用b'xxx'表示 division / 将表示正常除法操作 ...

  6. [Apache Atlas] Atlas 架构设计及源代码简单分析

    Apache Atlas 架构图 Atlas 支持多数据源接入:Hive.HBase.Storm等 Type System Type Atlas 中定义了一些元数据类型 ── AtlasBaseTyp ...

  7. DP之背包经典三例

    0/1背包 HDU2602 01背包(ZeroOnePack): 有N件物品和一个容量为V的背包,每种物品均只有一件.第i件物品的费用是c[i],价值是w[i].求解将哪些物品装入背包可使价值总和最大 ...

  8. 计算机网络 -- TCP/IP

    画图标准 OSI七层模型 7.应用层 作用:为用户提供软件/接口/界面 interface 协议:OICQ.HTTP.HTTPS.BT/P2P 6.表示层 作用:用于对用户数据进行数据呈现.(数据格式 ...

  9. 一文详解JavaScript的继承模式

    1 原型链继承 #### ES6中通过原型继承多个引用类型的属性和方法,由于原型和实例的关系,即每个构造函数都有自己的原型对象,同时原型有一个属性指向构造函数,并且实例有一个内部的指针指向原型.如果存 ...

  10. Batch Size对神经网络训练的影响

    ​ 前言 这篇文章非常全面细致地介绍了Batch Size的相关问题.结合一些理论知识,通过大量实验,文章探讨了Batch Size的大小对模型性能的影响.如何影响以及如何缩小影响等有关内容. 本文来 ...