实验5

task5.py
'''
学生档案管理
数据(属性):学号、姓名、专业、python课程分数
操作(方法):打印学生信息、返回课程分数、修改课程分数
'''

class StudentDoc:
    '''学生档案管理'''
    def __init__(self, student_number, name, major, python_score):
        self._student_number = student_number
        self._name = name
        self._major = major
        self._python_score = python_score

    def info(self): #打印学生信息
        print(f'学号: {self._student_number}, 姓名: {self._name}, 专业: {self._major}, python课程分数: {self._python_score}')

    def score(self): #返回课程分数
        return self._python_score

    def modify(self, new_score): #修改课程分数
        self._python_score = new_score
        return new_score

#测试类
def main():
    s1 = StudentDoc(20020821, 'Tony', 'art major', 95)
    s1.info()
    print(s1.score())
    s1.modify(91)
    print(s1.score())

if __name__ =='__main__': #如果模块名是'__main__'就执行
    print('模块信息: ', __doc__)
    print('StudentDoc类信息: ', StudentDoc.__doc__)
    main()

  

task5.py

from student import StudentDoc

s1 = StudentDoc('20020821', 'Tony', 'art major', '95')
s2 = StudentDoc('19950825', 'Evan', 'computer major', '92')

s1.info()
s2.info()

s1.modify(89)
s2.modify(88)

print(s1.score() )
print(s2.score() )

  

 

实验总结

        实验过程中基本能够懂得类与模块的使用。

        类的好处主要有:方便复用(如果你用函数写,就要复制整块代码,增加了代码量,增加了出错率)

方便扩展(函数写段代码,若要升级、扩展,都十分复杂,容易出错,用类来扩展,则方便清晰)

方便维护(因为类是把抽象的东西映射成我们常见的,摸得到的东西,容易理解,维护也方便)

而模块能像包含函数定义一样,可包含一些可执行语句。这些可执行语句通常用来进行模块的初始化工作。这些语句只在模

块第一次被导入时被执行。

posted @ 2021-05-25 18:15  年年有尼  阅读(22)  评论(1)    收藏  举报