习题1:
**1.初始化一个数据集,包括5-10位同学的成绩数据(数据类型不限),数据格式如下:
**学号 姓名 Java C语言 Python
2017XXXX 小白 87 68 92
2017XXXX 小黄 80 76 83
2017XXXX 小王 75 91 61
2017XXXX 小陈 67 80 74
......
......
要求:学号的后四位,各科成绩(区间:60-100)用随机数产生。
2.增加平均成绩一栏,计算各科成绩平均值,要求输出格式为(示例):
学号 姓名 Java C语言 Python 平均成绩
20170021 小白 87 68 92 82.33
3.统计全体学生的各科的平均成绩,最大值和最小值,输出格式自定。
import random #初始化 StudentId=[] Java=[] C=[] Python=[] Average=[] print("学号\t\t\t姓名\t\tjava\tC语言\tPython\t平均成绩\t") name=['小魏','小祥','小民','小小','民民'] for i in range(5): studentId = 20170000 + random.randint(0, 9999) #随机生成学号 java = random.randint(60, 100) #随机生成Java成绩 Java.append(java) c = random.randint(60, 100) #随机生成C语言成绩 C.append(c) python = random.randint(60, 100) #随机生成Python成绩 Python.append(python) average=(java+c+python)/3 #计算学生成绩平均值 Average.append(average) print("%d\t%s\t\t%d\t\t%d\t\t%d\t\t%.2f\t\t"%(studentId,name[i],java,c,python,average))
Javamax=max(Java)
Javamin=min(Java)
average_Java=(Java[0]+Java[1]+Java[2]+Java[3]+Java[4])/5
print("Java平均成绩:%.2f\t\tJava成绩最高为:%.2f\t\tJava成绩最低为:%.2f\t\t"%(average_Java,Javamax,Javamin))
Cmax=max(C)
Cmin=min(C)
average_C=(C[0]+C[1]+C[2]+C[3]+C[4])/5
print("C语言平均成绩:%.2f\t\tC语言成绩最高为:%.2f\t\tC语言成绩最低为:%.2f\t\t"%(average_C,Cmax,Cmin))
Pythonmax=max(Python)
Pythonmin=min(Python)
average_Python=(Python[0]+Python[1]+Python[2]+Python[3]+Python[4])/5
print("Python平均成绩:%.2f\t\tPython成绩最高为:%.2f\t\tPython成绩最低为:%.2f\t\t"%(average_Python,Pythonmax,Pythonmin))
习题2:
设计一个人民币与美元兑换程序(汇率按6:1),要求从键盘上输入人民币(用Y表示)或美元(用$表示)的金额,然后输出兑换后的数值。
要求增加异常处理功能(异常捕捉方法不限),能够对输入的非法数据(符号)进行异常捕捉,并输出错误类型。
money=input("请输入要转换的货币('Y'+人民币数量or'$'+美元数量) 人民币:美元=1:6:") try: if money[0]=='Y': money=eval(money[1:])/6 print("兑换后的金额是:${:.2f}".format(money)) elif money[0]=='$': momey=eval(money[1:])*6 print("兑换后的金额是:Y{:.2f}".format(money)) else: exit(0) except: print("你输入的格式有误,请再次运行后输入")
1.格式正确
2.格式错误