Python 第三次作业

 

 

1.每个习题要求附上实现的源代码(用博客园的代码功能,不能是截图)
2.输出结果附图片(截图)

习题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 as rd

print("学号 姓名 Python C语言 JAVA 平均成绩")
list_name = ['韩信', '李信', ' 孙尚香', '刘备', '小乔', '大乔', '周瑜', '李白', '刘禅', '明世隐']
ge_score = []
n = rd.randint(5, 11)
for i in range(0, n):
no = rd.randint(1000, 9999)
name = rd.choice(list_name)
sc_Python = rd.randint(60, 100)
sc_C = rd.randint(60, 100)
sc_JAVA = rd.randint(60, 100)
sc_aver = (sc_Python + sc_C + sc_JAVA) / 3
ge_score.append(sc_aver)
print("2017{} {} {} {} {} {:.2f}".format(no, name, sc_Python, sc_C, sc_JAVA, sc_aver))
print()
ge_score.sort()
py_max = ge_score[-1]
py_min = ge_score[0]
print("平均成绩最高分:{:.2f} 平均成绩最低分:{:.2f}".format(py_max, py_min))
运行截图:

习题2:
设计一个人民币与美元兑换程序(汇率按6:1),要求从键盘上输入人民币(用Y表示)或美元(用$表示)的金额,然后输出兑换后的数值。
要求增加异常处理功能(异常捕捉方法不限),能够对输入的非法数据(符号)进行异常捕捉,并输出错误类型。

import sys

money = input("请输入以Y或$表示的金额:")

try: # 判断首位是否为正确符号
eval(money[1:])
except NameError:
print("输入错误,请输入整数")
except SyntaxError:
print("输入错误,请输入整数")

try: # 判断输入内容是否为数字数据
if money[0] in ['Y']:
dollar = eval(money[1:]) / 6
print("${:.2f}".format(dollar))
elif money[0] in ['$']:
rmb = 6 * eval(money[1:])
print("Y{:.2f}".format(rmb))
else:
sys.exit()
except:
print("输入错误,请在第一位输入Y或$")
运行截图:

 


posted @ 2019-04-13 20:50  荧光下的暮色  阅读(176)  评论(0编辑  收藏  举报