第三次Python作业———林东

 
 

习题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))
习题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

猜你喜欢

转载自www.cnblogs.com/Bloglindong/p/10702667.html
今日推荐