python基础——2、python应用(随机、异常)——(YZ)
本次的内容为python的应用,关于随机、异常的应用,均多应用列表。
习题一
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("学号 姓名 Java C语言 Python 平均成绩")
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_java = rd.randint(60,100)
sc_C = rd.randint(60,100)
sc_python = rd.randint(60,100)
sc_aver = (sc_java + sc_C + sc_python)/3
ge_score.append(sc_aver)
print("2017{} {} {} {} {} {:.2f}".format(no,name,sc_java,sc_C,sc_python,sc_aver))
print( )
ge_score.sort()
pr_max=ge_score[-1]
pr_min=ge_score[0]
print("平均成绩最高分:{:.2f} 平均成绩最低分:{:.2f}".format(pr_max,pr_min))
以下是运行结果:

这题不会很难但是要注意题目给出的条件
习题二
1.设计一个人民币与美元兑换程序(汇率按6:1),要求从键盘上输入人民币(用Y表示)或美元(用$表示)的金额,然后输出兑换后的数值。
2.要求增加异常处理功能(异常捕捉方法不限),能够对输入的非法数据(符号)进行异常捕捉,并输出错误类型。
以下是代码内容:
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或$")
以下是运行结果:


这道题也不会很难,主要在于弄懂题目条件,分清if-else的内容
本次博客的内容主要是两道题中随机、异常的应用,在应用的时候应更加注意分清给出的要求或条件。
所以说很多时候不是你不会,只是缺少更多的思考,更多的细心罢了。
码云地址:习题一https://gitee.com/yz1999/python_learning/blob/master/%E4%B9%A0%E9%A2%98%E4%B8%80%EF%BC%88%E9%9A%8F%E6%9C%BA%E3%80%81%E5%88%97%E8%A1%A8%EF%BC%89
习题二https://gitee.com/yz1999/python_learning/blob/master/%E4%B9%A0%E9%A2%98%E4%BA%8C%EF%BC%88%E5%BC%82%E5%B8%B8%E3%80%81%E5%88%97%E8%A1%A8%EF%BC%89
python基础——2、python应用(随机、异常)——(YZ)的更多相关文章
- 二十一. Python基础(21)--Python基础(21)
二十一. Python基础(21)--Python基础(21) 1 ● 类的命名空间 #对于类的静态属性: #类.属性: 调用的就是类中的属性 #对象.属性: 先从自己的内存空间里找名 ...
- 2015/9/10 Python基础(11):错误和异常
程序在执行的过程中会产生异常,出现错误在以前的一个时期是致命的,后来随着程序的发展,使得一些错误的处理方式是柔和的,发生错误会产生一些错误的诊断信息和一些模糊的提示.帮助我们来处理异常.今天将学习Py ...
- Python基础+Pythonweb+Python扩展+Python选修四大专题 超强麦子学院Python35G视频教程
[保持在百度网盘中的, 可以在观看,嘿嘿 内容有点多,要想下载, 回复后就可以查看下载地址,资源收集不易,请好好珍惜] 下载地址:http://www.fu83.cc/ 感觉文章好,可以小手一抖 -- ...
- Python基础-1 python由来 Python安装入门 注释 pyc文件 python变量 获取用户输入 流程控制if while
1.Python由来 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚 ...
- python基础实践 -python是一门动态解释性的强类型定义语言
python是一门动态解释性的强类型定义语言 Python能做什么? Python是一门综合性的语言,你几乎能在计算机上通过Python做任何事情,以下是Python应该最广泛的几个方面: 1.网络应 ...
- python基础-初识Python和不同语言之间的区别
一.Python的创始人谁? Python之父:吉多·范罗苏姆GuidovanRossum 吉多·范罗苏姆是一名荷兰计算机程序员,他作为Python程序设计语言的作者而为人们熟知.在Python社区, ...
- python基础7 ---python函数
python基础知识 一.闭包函数 1.闭包函数的定义:在一个内部函数中,在对外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包. 2.闭包函数的特点:自带作用域和延迟计算 补 ...
- python基础1 ---python简介
python基础 一.python前言 1.什么是编程语言 编程语言是程序员与计算机之间沟通的介质. 2.编程语言的分类 机器语言:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集 ...
- Python基础 初识Python
机器码 机器码(machine code),学名机器语言指令,有时也被称为原生码(Native Code),是电脑的CPU可直接解读的数据. 通常意义上来理解的话,机器码就是计算机可以直接执行,并且执 ...
- Python基础之Python分类
python环境 编译型: 一次性将所有程序编译成二级制文件,开发效率极低,因为一旦出现BUG所有的程序需要全部重新编译 缺点: 开发效率低,不能跨平台 优点: 执行速度快 解释型: 当程序执行时,一 ...
随机推荐
- 电脑小白和ta的小白电脑——Tomcat服务器
配置web服务器tomcat,这里默认了已经配置JAVA开发环境↓ https://www.cnblogs.com/gifted35/p/9775112.html (一)下载tomcat 我安装的服务 ...
- [Oracle][DATAGUARD] LOGICAL STANDBY环境里,有些SEQUENCE无法应用,导致Primary和Standby无法同期
今天遇到了一个客户,问题是这样的,客户构筑了一个RACtoRAC的 LOGICAL STANDBY环境.并用EM在监视同期情况,发现EM页面上55115和55116这两个SEQUENCE一直在应用. ...
- NFS、FTP介绍
第二十五课 NFS.FTP介绍 目录 一. NFS介绍 二.NFS服务端安装配置 三.NFS配置选项 四.exportfs命令 五.NFS客户端问题 六.FTP介绍 七.使用vsftpd搭建ftp 八 ...
- win10下运行cmd闪退时检查方法
在cmd下运行 exe加空格加斜杠加问号
- MySQL数据库需进行修改密码问题解决方案
两种方式可供大家进行参考: 第一种: 格式:mysqladmin -u用户名 -p旧密码 password 新密码 1.给root加个密码pass123: 首先在DOS下进入目录mysql\bin,然 ...
- linux服务器升级nginx
1.简介 有时候nginx发布了新BUG或者添加了新的功能时,想要更新的时候服务又不能中断,这时候就要用到nginx的平滑升级了. 该脚本同样适用于添加新扩展,添加新扩展的时候只需要把更新的版本修改为 ...
- Wpf binging (二) 集合绑定
除去简单控件的数据绑定,还有集合控件的数据绑定,一下示例 这发现 source 变成了 itemsSource Path 变成了 DisplayMemberPath itemsSource:代 ...
- mysql数据库操作记录持续更新...
1.查看删除数据库表的唯一约束 SHOW INDEX FROM tbl_name (唯一约束也是索引) ALTER TABLE tbl_name DROP INDEX index_name 2.u ...
- 【5】用vector进行直接插入排序
百分百自己编的程序,越来越觉得编程很好玩了. 但这算是第一次自己用vector这种不是那么无脑的方法编程,只能最多对3个数进行排序wwwww 今天我要回去搬宿舍了,等明天有时间,我一定要把bug找到! ...
- QWaiteCondition思考3
QWaitConditioin::wait() 接收一个mutex作为参数,这个mutex应该被调用线程初始化为锁定状态.在线程进入休眠状态(waite)之前,mutex会被解锁.当线程被唤醒(Wak ...