python编程-12:类的定义-面向对象
  TEZNKK3IfmPf 2023年11月15日 28 0
:某种类型集合的描述。举例:人

属性  
类本身的一些特性,如名字、身高和体重等属性
属性具体值则会根据每个人的不同而不同;

方法  
类所能实现的行为,如吃饭、走路和睡觉等方法。

类的定义  
class classname[(父类名)]:[成员函数及成员变量]
_init_构造函数:初始化对象的各属性
_del_析构函数:销毁对象

源代码:
  1. # 找到GPA最高的学生

  2. class Student:

  3.     def __init__(self, name, hours, qpoints):

  4.         self.name = name

  5.         self.hours = float(hours)

  6.         self.qpoints = float(qpoints)

  7.     def getName(self):

  8.         return self.name

  9.     def getHours(self):

  10.         return self.hours

  11.     def getQPoints(self):

  12.         return self.qpoints

  13.     def gpa(self):

  14.         return self.qpoints/self.hours

  15. def makeStudent(infoStr):

  16.     name, hours, qpoints = infoStr.split("\t")

  17.     return Student(name, hours, qpoints)

  18. def main():

  19.     # 打开输入文件

  20.     filename = input("Enter name the grade file: ")

  21.     infile = open(filename, 'r')

  22.     # 设置文件中第一个学生的记录为best

  23.     best = makeStudent(infile.readline())

  24.     # 处理文件剩余行数据

  25.     for line in infile:

  26.         # 将每一行数据转换为一个记录

  27.         s = makeStudent(line)

  28.         # 如果该学生是目前GPA最高的,则记录下来

  29.         if s.gpa() > best.gpa():

  30.             best = s

  31.     infile.close()

  32.     # 打印GPA成绩最高的学生信息

  33.     print("The best student is:", best.getName())

  34.     print("hours:", best.getHours())

  35.     print("GPA:", best.gpa())

  36. if __name__ == '__main__':

  37.     main()

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月15日 0

暂无评论

推荐阅读
TEZNKK3IfmPf