2021-2022-1学期Python上机测试题
模块一:变量、数据类型、表达式和输入输出语句
1、利用input函数分别输入自己的名字和年龄,并打印出如下字符串:“哇塞,xx明年就yy 岁了!”(年龄+1)
2、现有字符串:str1 = 'www.hufe.edu',根据题目要求编程实现:
(1)截取字符串的第一位到第三位的字符
(2)截取字符串最后三位的字符
(3)截取字符串的六个字符
(4)输出字符串的长度
(5)将字符串中所有的"."换成"-"并输出
(6)统计字符w出现的次数
(7)输出字符的长度
3、已知字符串a = “aAsar3ide4bgs7Dlsf9eAF”,要求如下:
accommodation是什么意思(1)出字符串中最先出现i字母的位置
(2)计算a字母出现的次数
(3)将a字符串的大写改为小写,小写改为大写。
(4)将a字符串的数字取出,并输出成一个新的字符串
(5)去除a字符串中的字母a,并输出
(6)将a字符串反转并输出python基础知识测试
4、分别创建三个变量并进行赋值作为三门功课的成绩(从键盘输入),计算总分和平均分,并打印。
5、调用列表操作的常用函数实现以下功能:
(1)创建一个列表score =[68,87,92,100,76,88,54,89,76,61];
(2)输出score 列表中后5 个元素的数值;
(3)输出score 列表中第1~6 个元素的值;
sql数据库默认安装路径(4)调用insert()函数,在score 列表第 3 个元素之前添加数59;
(5)利用变量num 保存数值76,调用count()函数,查询num 变量值在score 列
表中出现的次数;
(6)调用sort()函数,对列表中所有元素进行排序,输出考试的最高分和最低分;
(7)查元素100在列表的位置
(8)求列表所有元素的平均值
模块二:分支和循环结构
1、计算字符串“lyf1_be4_6love7dbee”中字母,数字,下划线的个数,并输出结果。
2、输入若干个成绩,求所有成绩的平均分。每输入一个成绩后询问是否继续输入下一个成绩,回答“yes”就继续输入下一个成绩,回答“no”就停止输入成绩。
3、随机读取20个数(1—50)的整数值,每读取一个值,如果该值小于10,则程序打印出该值个数的*。
4、有两个列表l1=[11,22,33,55] 和l2=[22,33,44,66,77]
(1)输出内容相同的元素列表
(2)输出l1中有l2中没有元素列表
(3)合并列表,重复的元素只能出现一次(用循环实现)
5、编写程序,计算a+aa+aaa+......+aaa..aaa的值,其中a和n是1-9之间的某个数字(随机)。例如,当a=2,n=5时,s=2+22+222+2222+22222=24690
6、判断2-200之间有多少个素数,并输出所有素数和个数。
7、输出2-1000之间能被3和5同时整除的数,要求每行输出5个数字。
8、利用turtle库画图:
(1)利用循环画多个周期的时钟信号:
(2)画输入波形图,如S=[0,1,0,1,1,0]
9、某幼儿园组织秋游,需要统计人数。假设字典dic_class存放了幼儿园的所有班级,内容为{"托班",["
a班","b班","c班"],"小班",["d班","f班"],"中班"["h班","n班"]}.字典dic_number 中存放着每一个班的报名人数,内容为{"a班":26,"b班":23,"c班":25,"d班":32,"f班":31,"h班":33,"n班":34}。试编写程序统计各年级的报名人数和全园的报名人数。输出结果如下:托班:74人小班:63人中班67人全园204人
模块三、python组合数据类型:列表、元组、字典和集合
1、假设有列表student=[['001','李梅',19],['002','韩磊磊',21],['003','张亮',18]]依次存放了每名学生的学号、姓名和年龄,编写程序完成如下功能:
(1)添加学生信息['004','王大锤',20]和['006','刘大刀',23]
(2) 在列表适当位置添加学生信息['005','赵钱孙',20]
(3)输出学号为004的学生信息
(4)输出所有学生的姓名
(5)输出年龄大于19的所有学生的信息
(6)输出所有学生的平均年龄
2、已知有一个包含一些同学成绩的字典:scores = {"Zhang San": 45, "Li Si": 78, "Wang Wu": 40, "Zhou Liu": 96,"Zhao Qi": 65, "Sun Ba": 90, "Zheng Jiu": 78, "Wu Shi": 99,"Dong Shiyi": 60},编写程序完成如下功能:
企业网站管理源码(1)请循环遍历出所有的value
(2)请循环遍历出所有的key和value
(3)输出成绩的最高分、最低分和平均分
(4)输出不及格的同学名字和分数
链表冒泡排序(5)按照成绩对学生进行排序并输出结果
3、假设字典dic_city中存放了每一个人旅游的城市,内容为{"张三":["北京","上海"],"李四":["成都","重庆","兰州"],"王五":["太原","上海","济南","北京"]。试编写程序,实现以下功能。(1)统计每个人旅游过的城市的数目。输出结果如下:张三去过2个城市李四去了3个城市王五去了4个城市(2)统计去过上海的名单和人数。输出结果如下:去过上海
的人是张三和王五,一共是2人(3)生成一个新的字典,键为城市,值为对应的人名。4、编写程序,
实现以下功能:(1)创建空字典dic_student. (2)由用户依次录入五名学生的姓名,年龄,身高和体重,存入字典dic_student,将姓名作为键,年龄,身高和体重作为值。(3)输出字典dic_student的内容,格式为王建18 172cm 80kg (4)输出五名同学身高的平均值(5)输出五名同学中体重超过60Kg的同学信息
5、编写程序,实现下列功能:(1)创建一个字典,存放所有已注册用户的用户名和密码,内容如下。用户名密码小林1995 小彦0421 小俊0824 (2)提示用户输入用户名和密码。(3)依次对用户名和密码进行判断,并给出相应的提示。 1.若用户名输入错误,则提示"用户名不正确!"。 2.若密码输入错误,则提示"密码不正确!"。 3.若用户名和密码均正确,则提示"登录成功!"。
6、随机生出一个0-100之间的数值序列,如[11,22,33,44,55,66,77,88,99,90],将所有大于30的值保存至字典的第一个key中,将大于30小于60值保存至第二个key的值中,将剩下的存在第三个key的值中。基于此生成一个新的字典,存三个值的平均值。
7、假设列表lst_busstop=["金星路","西湖公园","溁湾镇","湘江中路","橘子洲","五一广场"],存放2号线地铁某一段线路的站名。编写程序,根据用户输入的起始站和终点站,计算所需要经过的站数并计算出结果。并且,当输入方向相反时,如起始站为“五一广场”,终点站为“金星路”时提示“需要乘坐反方向线路”。另有字典dict_place={"金星路":["菜园","早古塘"],"西湖公园":["西湖鱼巷","58小镇"], "溁湾镇":[ "
武警医院","岳麓山"], "湘江中路":[ "老长沙","万达广场"], "橘子洲":[ "湘江","橘子洲头"], "五一广场":[ "IFS","太平老街"]}存放了每一张的地点,编写程序,通过输入两个地点,输出对应的信息。
8、某餐厅推出了下午茶套餐活动,可以从指定的饮料和糕点中各选一款作为套餐,糕点包括提拉米苏(15)、芝士蛋糕(20)和三明治(10),饮料包括红茶(6)、咖啡(12)和橙汁(8),套餐的价格定位单价的两个之和乘以0.8取整,编程输出所有的套餐详情。提示:输出一个列表,每一个元素是一个元组,如[('提拉米苏','红茶',17)],单价商品也可以存成一个列表,每一个元素是一个元组,如[('提拉米苏',17)]
9、假设已有列表lst_floor=[1,4,2,7,3],存放了某电梯在一段时间内经过的楼层,试编写程序,实现以下功能:(1)输出电梯的运行路线(↑表示上一层,↓表示下一层),结果:↑↑↑↓↓↑↑↑↑↑↓↓↓↓ (2)假设运行路线为↑↑↓↓↓↑↑↓↑↑↑↑,且已知初始楼层为2楼,输出经过的各楼层,结果如下:2,3,4,3,2,1,2,3,2,3,4,5,6
模块四、函数
1、编写函数,接收任意多个实数,返回一个元组,其中第一个元素为所有参数的平均值,第二个元素是小于该平均值的参数,第三个元素为所有参数的降序排列。
2、编写一个函数,简单模拟发红包算法,函数有两个参数:一个参数表述红包总金额,默认值为
100;另一个参数表示红包数量,默认值为15。所有随机产生的红包金额(保留两位小数),存放在一个列表中,单个红包最小金额为0.01元,所有红包金额之和应等于红包总金额。最后在主程序中测试该函数,要求对函数的默认值也进行测试。
3、输入一个字符串,判断其是否为回文。所谓回文字符串,是指从左到右读和从右到左读完全相同的字符串。例如:输入字符串:abcdcba 该字符串是回文串。
4、输入一串字符作为密码,密码只能由数字和字母组成,编写一个函数judge(password),用来求出密码的强度level,并在主程序中测试该函数,输出密码强度。密码强度判断推测如下(满足其中一条,密码强度增加一级):1、有数字;2、有大写字母;3、有小写字母;
4、位数不少于8位。
5、编写函数,接收字符串参数,返回一个元组,其中第一个元素为大写字母个数,第二个
元素为小写字母个数。
6、编写函数,接收包含多个整数的列表lst和一个整数k作为参数(如果k小于类别长度报错),返回新列表。处理规则为:将列表lst中下标k之前的元素升序排列,下标k之后的元素逆序。
7、编写函数,输入一个正整数n,对其进行因式分解并输出。
例如:输入18,输出18=2*3*3
8、编写函数,输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”
9、编写函数实现如下功能:
(1)用lambda函数计算圆的面积。
(2)用lambda函数,接收两个字符串形式的整数,并计算它们的和,然后打印它。
(3)用filter()函数和lambda表达式快速求出100以内所有3的倍数。
(4)用map()函数和lambda表达式求一个对一个列表每一个元素求平方
(5)用sorted()函数和lambda表达式对字典dict_data = {"化1704":33, "化1702":28, "化1701":34, "化1703":30}按照值的大小排序。
10、编写函数分别实现:
(1)实现选择排序。原理如下:首先在未排序序列中到最小(大)元素,存放到排序序列的起始位
置,然后再从剩余未排序元素中继续寻最小(大)元素。放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
(2)实现插入排序,原理如下:通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,到相应位置并插入。插入排序在实现上,在从后向前的扫描过程中,需要把已排序元素逐步向后挪位,为最新元素提供插入空间。
模块五、文件
1、(1)向文本文件中写入如下内容,并读出文件打印:
Python考试so easy!
哈哈哈
才怪!
(2)对每一行增加一个行号再写入一个新的文件。
2、随机生成两个包含10个1-100的整数的列表,分别写入到磁盘文件A、B中;读出A、B文件的内容,并合并(按降序排列), 输出到一个新文件C中。
3、从键盘输入一个字符串,完成如下操作,然后输出到磁盘文件"test"中保存:
html添加动画的代码(1)第一行存字符串的逆序
(2)将小写字母全部转换成大写字母,存入第二行(追加)
(3)读出文件内容并打印
4、随机生成包含100个1-1000的整数的列表,写入到磁盘文件A中;读出A文件的内容,帅选出其中能被3和7同时整除的数, 输出到一个新文件B中。
5、编写函数实现如下内容,参数为字符串和文件:
(1)统计一串其中英文字母、空格、数字和其它字符的个数。
(2)将结果输出到文件中,如英文字母:10
(3)对函数进行测试
综合测试题(加分题)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论