国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開發(fā) > Python > 正文

python創(chuàng)建學(xué)生成績(jī)管理系統(tǒng)

2024-09-09 19:02:58
字體:
供稿:網(wǎng)友

python學(xué)生成績(jī)管理系統(tǒng)創(chuàng)建,供大家參考,具體內(nèi)容如下

要求編寫學(xué)生類,班級(jí)類,并在電腦運(yùn)行生成表單,輸入一個(gè)數(shù)字,得到對(duì)應(yīng)的結(jié)果。

輸出樣式

代碼如下

學(xué)生類

class Student: def __init__(self,sno,name,english,math):  self.sno=sno  self.name=name  self.__english=english  self.__math=math   @property def english(self):  return self.__english   @english.setter def english(self,english):  self.__english=english if 0<=english<=100 else 0   @property def math(self):  return self.__math     @math.setter def math(self,math):  self.__math=math if 0<=math<=100 else 0   def get_average(self):  return (self.english+self.math)/2 def __str__(self):  s=str.format('{0:>4d}{1: >4s}{2:>8d}{3:>8d}',self.sno,self.name,self.english,self.math)  return s     @staticmethod def get_header():  return '{0:>2s}{1: >4s}{2:/u3000>4s}{3: >4s}'.format('學(xué)號(hào)','姓名','英語(yǔ)','數(shù)學(xué)')   def __eq__(self,other):  return self.sno==other.sno   def __gt__(self,other):  return self.sno>other.sno

測(cè)試

#測(cè)試if __name__=='__main__': s1=Student(1,'王大海',100, 65) s2=Student(2,'李三',38,45) s3=Student(3,'李四',88,45) print(s1>s2) students=[s2,s1,s3] students.sort() print(students) print(Student.get_header()) for s in students:  print(s) 

結(jié)果

班級(jí)類

from student import Studentclass BanJi: def __init__(self,name):  self.name=name  self.students=[]  self.load_data()   def load_data(self):  with open('data.txt','r')as f:   for line in f:    d=line.split()    self.students.append(Student(int(d[0]),d[1],int(d[2]),int(d[3])))     def show_student(self):  print(Student.get_header())  for s in self.students:   print(s)    def add_student(self,student):  if student in self.students:   return '此學(xué)生已存在'  else:   self.students.append(student)   return'添加成功'    def __index_student(self,sno):  s=Student(sno,'',0,0)  if s not in self.students:   return None  else:   return self.students.index(s)    def find_student(self,sno):  i = self.__index_student(sno)  if i is None:   return None  else:   return self.students[i] def delete_student(self,sno):  i = self.__index_student(sno)  if i is None:   r = '沒有學(xué)號(hào)為{0: d}'.format(sno)  else:   del self.students[i]   r = '刪除成功!'  return r   def update_student(self,sno):  s = self.find_student(sno)  if s is None:   return '沒有學(xué)號(hào)為{0:d}的學(xué)生!'.format(sno)  else:   print(s)   print('請(qǐng)輸入新的值,直接回車不修改!')   name_str = input('姓名:')   english_str = input('英語(yǔ):')   math_str = input('數(shù)學(xué):')   s.name = name_str if len(name_str)>0 else s.name   s.name = int(english_str) if len(english_str)>0 else s.english   s.name = int(math_str) if len(math_str)>0 else s.math   return '修改成功!'    def save_data(self):  with open('data.txt','w',encoding = 'GBK') as f:   for s in self.students:    r = str.format('{0:d} {1:s} {2:d} {3:d}/n',s.sno,s.name,s.english,s.math)    f.write(r)        def sort_by_english(self,reverse = False):  self.students.sort(key=lambda x: x.english,reverse = reverse)
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 洪洞县| 红河县| 弋阳县| 康保县| 高州市| 成武县| 霍林郭勒市| 雷州市| 延津县| 柳林县| 临颍县| 齐齐哈尔市| 南部县| 资源县| 怀仁县| 汉阴县| 台中市| 新干县| 北安市| 邵东县| 深圳市| 屏东县| 历史| 博罗县| 汤阴县| 岱山县| 广灵县| 县级市| 临武县| 清徐县| 龙海市| 长阳| 临汾市| 当涂县| 陆良县| 政和县| 吉安县| 乌审旗| 黄冈市| 馆陶县| 龙山县|