P160 Python核心-2.1 课程回顾及作业解析
一、Day14模块复习
"""
复习
模块
1. 定义:.py文件
2. 作用:多人合作开发
3. 导入:
import 模块
模块.成员名
import 模块 as 别名
别名.成员名
-------------------
from 模块 import 成员1
直接使用成员
-------------------
from 模块 import *
"""
二、将学生信息管理系统分成多个模块(py文件)
分别将代码分为以下四个模块,每个模块开头写上注释,代表模块的功能
模块一: model
"""
定义数据模型
"""
class StudentModel:
"""
学生模型
"""
def __init__(self, name="", age=0, score=0, id=0):
"""
创建学生对象
:param name: 姓名,str类型.
:param age: 年龄,int类型
:param score: 成绩,float类型
:param id: 编号(该学生对象的唯一标识)
"""
self.name = name
self.age = age
self.score = score
self.id = id
模块二:ui
"""
界面代码
"""
from bll import *
from model import *
class StudentManagerView:
"""
学生管理器视图
"""
def __init__(self):
self.__manager = StudentManagerController()
def __display_menu(self):
print("1)添加学生")
print("2)显示学生")
print("3)删除学生")
print("4)修改学生")
print("5)按照成绩升序显示学生")
def __select_menu(self):
item = input("请输入:")
if item == "1":
self.__input_student()
elif item == "2":
self.__output_students(self.__manager.stu_list)
elif item == "3":
self.__delete_student()
elif item == "4":
self.__modify_student()
elif item == "5":
self.__output_student_by_score()
def main(self):
"""
界面视图入口
:return:
"""
while True:
self.__display_menu()
self.__select_menu()
def __input_student(self):
name = input("请输入姓名:")
age = int(input("请输入年龄:"))
score = int(input("请输入成绩:"))
stu = StudentModel(name, age, score)
self.__manager.add_student(stu)
def __output_students(self, list_output):
for item in list_output:
print(item.id, item.name, item.atk, item.score)
def __delete_student(self):
id = int(input("请输入编号:"))
if self.__manager.remove_student(id):
print</