习题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.统计全体学生的各科的平均成绩,最大值和最小值,输出格式自定。
1 from random import randint 2 3 list = [["" ,"张三" ], 4 ["" ,"李四" ], 5 ["" ,"王五" ], 6 ["" ,"小林" ], 7 ["" ,"阿呆" ],] 8 9 10 for i in range(0,5): 11 list[i][0] = 20170000+randint(0,10000) 12 for j in range(0,3): 13 list[i].append(randint(60,100)) 14 15 16 a=0 17 for i in range(len(list)): 18 a = (list[i][2] + list[i][3] + list[i][4])/3 19 a_1 = float("{0:.2f}".format(a)) 20 list[i].append(a_1) 21 22 23 print("学号 姓名 Java C语言 Python 平均分") 24 for i in list: 25 for j in i: 26 print(j,end=" ") 27 print("\t") 28 29 30 a_j,a_c,a_p,max = 0,0,0,0 31 n = len(list) 32 min = list[0][2] 33 for i in range(len(list)): 34 a_j += list[i][2] 35 a_c += list[i][3] 36 a_p += list[i][4] 37 for j in range(2, 5): 38 if(list[i][j]>max): 39 max =list[i][j] 40 if(list[i][j]<min): 41 min =list[i][j] 42 43 print("Java的平均成绩:{}\nC语言的平均成绩:{}\nPython的平均成绩:{}\n最大值:{}\n最小值:{}".format(a_j,a_c,a_p,max,min))
![](https://img2018.cnblogs.com/blog/1643266/201904/1643266-20190413195720444-483509981.png)
习题2:
设计一个人民币与美元兑换程序(汇率按6:1),要求从键盘上输入人民币(用Y表示)或美元(用$表示)的金额,然后输出兑换后的数值。
要求增加异常处理功能(异常捕捉方法不限),能够对输入的非法数据(符号)进行异常捕捉,并输出错误类型。
1 import sys 2 money = input("请输入要兑换的货币(例如:Y30或者$20):") 3 4 try: 5 eval(money[1:]) 6 except NameError: 7 print("输入错误,请先输入货币名") 8 except SyntaxError: 9 print("输入错误,请先输入货币名") 10 11 12 try: 13 if money[0] in ['Y']: 14 dollar = eval(money[1:]) / 6 15 print("${:.2f}".format(dollar)) 16 elif money[0] in ['$']: 17 rmb = 6 * eval(money[1:]) 18 print("Y{:.2f}".format(rmb)) 19 else: 20 sys.exit() 21 except: 22 print("输入错误,请在货币名后面输入金额")
码云地址:https://gitee.com/Alex_ld