python作业(面向对象)

通过面向对象的方式实现队列和栈的数据结构;

l = []
l.get()

class Stack():

s = Stack()
s.pop()
s.push()
s.info()
s.getSize()

源代码

stack=[1,2]
class Stack(object):    #栈的类
    def __init__(self):
        pass
    def pop(self):
        if len(stack) == 0:
            print "空栈"
        else:
            print stack.pop(),"元素被弹出"
    def push(self):
        item = raw_input("入栈元素:")
        stack.append(item)
        print "%s元素入栈成功" %(item)
    def info(self):
        print "当前栈内的元素为:",
        for i in stack:
        print i,
        print ""
    def getSize(self):
        print "当前栈内的元素有%d个" %(len(stack))

class Queue(object):    ##队列的类
    def __init__(self):
        pass
    def pop(self):
        if len(stack) == 0:
            print "空队列"
        else:
            print stack.pop(0),"元素被弹出"
    def push(self):
        item = raw_input("入队列元素:")
        stack.append(item)
        print "%s元素入队列成功" %(item)
    def info(self):
        print "当前队列内的元素为:",
        for i in stack:
        print i,
        print ""
    def getSize(self):
        print "当前队列内的元素有%d个" %(len(stack))

s = Stack()
s.info()
s.push()
s.info()
s.pop()
s.info()
s.getSize()

q = Queue()
q.info()
q.push()
q.info()
q.pop()
q.info()
q.getSize()

测试结果

这里写图片描述

管理系统雏形

西部开源:学校,学员,讲师
   学校:
      属性:名称,地点,校训
       方法:招生,招聘讲师

   学员:
        属性:姓名, 年龄, 性别,班级,学号
         方法:学习,交钱,显示信息


 讲师
       属性:姓名, 年龄, 性别, 课程, 工资
       方法:讲课,显示信息

 学员保存在字典里,讲师保存在字典里
student_info = {"1":[1,1,1,1]}
teacher_info = {"2":[2,2,2,2,2]}

class School(object):
    def __init__(self,name,adress,motto):
        self.school_name = name
        self.school_address = adress
        self.school_motto = motto
    def info(self):
        print "学校名称:%s" %(self.school_name)
        print "学校地址:%s" %(self.school_address)
        print "校训:%s" %(self.school_motto)
        print student_info
        print teacher_info
        return

    def RecruitStudents(self):  #招生
        l=[]
        l.append(raw_input("请输入学生姓名:"))
        l.append(input("请输入学生年龄:"))
        l.append(raw_input("请输入学生性别:"))
        l.append(raw_input("请输入学生所分配的班级:"))
        student_num = raw_input("请输入学生学号:")
        student_info.setdefault(student_num,l)
        print "招生成功"
        return

    def RecruitTeacher(self):   #招聘讲师
        l = []
        l.append(raw_input("请输入讲师姓名"))
        l.append(input("请输入讲师年龄:"))
        l.append(raw_input("请输入讲师性别:"))
        l.append(raw_input("请输入讲师的课程:"))
        l.append(raw_input("请输入讲师的工资:"))
        teacher_num = raw_input("请输入讲师工号:")
        teacher_info.setdefault(teacher_num,l)
        print "招生成功"
        return

class Student(School):
    # def __init__(self,student_name,age,sex,Class,num,school_name,address,motto):
    #     super(student, self).__init__(school_name,address,motto)
    def __init__(self,name,age,sex,Class,num): #属性:姓名, 年龄, 性别,班级,学号
        self.student_name = name
        self.student_age = age
        self.student_sex = sex
        self.student_Class = Class
        self.student_num = num
    def study(self):    #学习
        print "%s学生正在学习!" %(self.student_name)
        return
    def pay(self):      #交钱
        print "%s学生已经交钱了!" %(self.student_name)
        return
    def info(self):     #信息
        print """
学生信息:
姓名:%s
年龄:%d
性别:%s
所在班级:%s
学号:%s
""" %(self.student_name,self.student_age,self.student_sex,self.student_Class,self.student_num)
        return

class Teacher(School):
    def __init__(self,name,age,sex,curriculum,wages,num):   #属性:姓名, 年龄, 性别, 课程, 工资
        self.teacher_name = name
        self.teacher_age = age
        self.teacher_sex = sex
        self.teacher_curriculum = curriculum
        self.teacher_wages = wages
        self.teacher_num = num
    def lecture(self):  #讲课
        print "%s老师正在讲课!" %(self.teacher_name)
        return
    def info(self):     #信息
        print """
讲师信息:
姓名:%s
年龄:%d
性别:%s
课程:%s
工资:%s
工号:%s
""" %(self.teacher_name,self.teacher_age,self.teacher_sex,self.teacher_curriculum,self.teacher_wages,self.teacher_num)
        return
# s = student("王伟波",20,"男","linux",4,"westos","电子二路","linux")
# s.info()

# s = student("王伟波",20,"男","linux",4)
# s.info()

def school_manage():
    while True:
        # schoolname=raw_input("请输入学校名称:")
        # schooladdress=raw_input("请输入学校的地址:")
        # schoolmotto=raw_input("请输入学校的校训:")
        # school = School(schoolname,schooladdress,schoolmotto)
        school = School("westos","电子二路","醉心linux")
        schoolview ="""
            欢迎登陆学校管理系统
        (1).查看学校信息
        (2).招生
        (3).招聘讲师
        (4).退出
    请输入你的选择(1|2|3|4):
    """
        chiose = input(schoolview)
        if chiose == 1:
            school.info()
        elif chiose == 2:
            school.RecruitStudents()
        elif chiose == 3:
            school.RecruitTeacher()
        elif chiose == 4:
            return
        else:
            print "输入有误!请输入(1|2|3|4)"

def student_manage():
    while True:
        student_num = raw_input("请输入学生学号:")
        name = student_info[student_num][0]
        age = student_info[student_num][1]
        sex = student_info[student_num][2]
        Class = student_info[student_num][3]

        student = Student(name,age,sex,Class,student_num)
        studentview = """
        欢迎登陆学生管理系统
    (1).查看学生信息
    (2).交钱
    (3).学习
    (4).退出
请输入你的选择(1|2|3|4):
            """
        chiose = input(studentview)
        if chiose == 1:
            student.info()
        elif chiose == 2:
            student.pay()
        elif chiose == 3:
            student.study()
        elif chiose == 4:
            return
        else:
            print "输入有误!请输入(1|2|3|4)"
def teacher_manage():
    while True:
        teacher_num = raw_input("请输入讲师工号:")
        name = teacher_info[teacher_num][0]
        age = teacher_info[teacher_num][1]
        sex = teacher_info[teacher_num][2]
        curriculum = teacher_info[teacher_num][3]
        wages = teacher_info[teacher_num][4]
        teacher = Teacher(name,age,sex,curriculum,wages,teacher_num)
        teacherview = """
        欢迎登陆教师管理系统
    (1).查看教师信息
    (2).讲课
    (3).退出
请输入你的选择(1|2|3):
             """
        chiose = input(teacherview)
        if chiose == 1:
            teacher.info()
        elif chiose == 2:
            teacher.lecture()
        elif chiose == 3:
            return
        else:
            print "输入有误!请输入(1|2|3)"
while True:
    view = """
    (1).学校管理系统
    (2).学生管理系统
    (3).教师管理系统
    (4).退出

请选择要登陆的管理系统(1|2|3|4):
"""
    chiose = input(view)

    if chiose == 1:
        school_manage()
    elif chiose == 2:
        student_manage()
    elif chiose == 3:
        teacher_manage()
    else:
        break

这里写图片描述
这里写图片描述
这里写图片描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值