求python计算机语言大神帮忙写一个小程序,大概几行代码,我没时间研究了,真心谢谢了
使用python写一个成绩录入和排序系统,要求能输入姓名,姓名可以并建议是英文输入:可以输入成绩:可以通过判断结束输入,可对已经输入的成绩进行排序,并显示已经输入的姓名和...
使用python写一个成绩录入和排序系统,要求能输入姓名,姓名可以并建议是英文输入:可以输入成绩:可以通过判断结束输入,可对已经输入的成绩进行排序,并显示已经输入的姓名和成绩。写出来最好能私信给我不要把代码写到网上,谢谢了,真心谢谢了,我所有的分送上!!!!
展开
1个回答
展开全部
哈哈 这个已经有别人问过了,而且还是我回答的,我说好熟悉的感觉。
http://zhidao.baidu.com/question/919105684991252659.html?oldq=1
你看看,会不会是你们专业的呢
代码如下:
#-*-coding:utf-8-*-
class Student(object):
"""
自定义Student类
"""
def __init__(self, name, score):
# 初始化Student,参数name,score
self.name = name
self.score = score
def __cmp__(self, other):
# 重写比较方法,根据Student类属性score进行比较
return cmp(self.score, other.score)
def show(self):
return 'name:'+self.name+'; score:'+str(self.score)
def get_input():
name = raw_input('input name > ')
if not name: # 当姓名输入为空时,返回None
return (None,None)
score = raw_input('input %s\'s score > ' % name)
if name and score:
return (name,int(score)) # 为方便比较,将score强制转换为int型
else:
return (None,None)
def main():
s_list = []
while True: # 一直循环输入姓名及成绩
name,score = get_input()
if name and score:
s = Student(name, score)
s_list.append(s)
else: # 当输入姓名或成绩为空时跳出循环
break
s_list.sort() # 对Student实体进行排序
for i,s in enumerate(s_list): # 遍历已经排序的实体列表,并进行显示
print ' '.join([str(i+1), s.name, str(s.score)])
if __name__ == '__main__':
main()
输入及输出如下
input name > a
input a's score > 97
input name > b
input b's score > 95
input name > c
input c's score > 96
input name >
1 b 95
2 c 96
3 a 97
注释很详细了,应该能看懂
更多追问追答
追问
谢谢大神,能加一下你的qq么?
大神
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询