python二级备考(2)-简单应用题

news2025/1/13 10:05:42

第1套

使用turtle库的turtle. right()函数和turtle.fd()函数绘制一个菱形,边长为200像素,4个内角度数为2个60度和2个120度

键盘输入一组人员的姓名、性别、年龄等信息,信息间采用空格分隔,每人一行,空行回车结束录入,示例格式如下:

张三 男 23

李四 女 21

王五 男 18

计算并输出这组人员的平均年龄(保留2位小数)和其中男性人数,格式如下:

平均年龄是20.67 男性人数是2

# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准

data = input()  # 姓名 性别 年龄
s=0
n=0
i=0
while data:
    i=i+1
    ls=data.split()
    s=s+int(ls[2])
    if ls[1]=='男':
        n=n+1
    data = input()
s=s/i
print("平均年龄是{:.2f} 男性人数是{}".format(s,n))

第2套

使用turtle库的turtle.fd()函数和turtle. seth()函数绘制一个边长为200的正菱形,菱形4个内角均为90度。

效果如下图所示,箭头与下图严格一致。

# 请在______处使用一行代码替换
#
# 注意:请不要修改其他已给出代码

import turtle
turtle.pensize(2)
d = -45
for i in range(4):
    turtle.seth(d)
    d  += 90
    turtle.fd(200)

 

键盘输入某班各个同学就业的行业名称,行业名称之间用空格间隔(回车结束输入)。完善Python代码,统计各行业就业的学生数量,按数量从高到低方式输出。例如输入:

交通 金融 计算机 交通 计算机 计算机

输出参考格式如下,其中冒号为英文冒号:

计算机:3

交通:2

金融:1

# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准

names=input("请输入各个同学行业名称,行业名称之间用空格间隔(回车结束输入):")
t=names.split()
d = {}
for c in range(len(t)):
    d[t[c]]=d.get(t[c],0)+1
ls = list(d.items())
ls.sort(key=lambda x:x[1], reverse=True) # 按照数量排序
for k in range(len(ls)):
    zy,num=ls[k]
    print("{}:{}".format(zy,num))

第3套

和第2套差不多

第4套

还是画图化等边三角形

第二题,

键盘输入小明学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如下:

数学 90

语文 95

英语 86

物理 84

生物 87

屏幕输出得分最高的课程及成绩,得分最低的课程及成绩,以及平均分(保留2位小数)。

注意,其中逗号为英文逗号,格式如下:

最高分课程是语文 95,最低分课程是物理 84,平均分是88.40

# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准


data = input()  # 课程名 考分
ls = data.split()
min_score=int(ls[1])
min_name = ls[0]
max_score=int(ls[1])
max_name = ls[0]
n = 0
sum = 0
while data:
    n+=1
    lt = data.split()
    if min_score > int(lt[1]):
        min_score = int(lt[1])
        min_name = lt[0]
    if max_score < int(lt[1]):
        max_score = int(lt[1])
        max_name = lt[0]
    sum+=int(lt[1])
    data = input()
avg = sum/n
print("最高分课程是{} {}, 最低分课程是{} {}, 平均分是{:.2f}".format(max_name,max_score,min_name,min_score,avg))

第5套

使用turtle库的turtle.fd()函数和turtle.seth()函数绘制一个边长为100的正八边形

难的题目出现!

加了文件读写

使用字典和列表型变量完成村长选举。某村有40名有选举权和被选举权村民,名单由考生文件夹下文件name.txt给出,从这40名村民中选出一人当长,40人的投票信息由考生文件夹下文件vote.txt给出,每行是一张选票的信息,有效票中得票最多的村民当选。

问题1:请从vote.txt中筛选出无效票写入文件vote1.txt。有效票的含义是:选票中只有一个名字且该名字在name.txt文件列表中,不是有效票的票称为无效票。

问题2:给出当选村长的名字及其得票数。

'''

'''
f=open("name.txt")
names=f.readlines()
f.close()
f=open("vote.txt")
votes=f.readlines()
f.close()
f=open("vote1.txt","w")
D={}
NUM=0
for vote in votes:
    num = len(vote.split())  #分解成列表,并求列表长度(元素个数)
    if num==1 and vote in names:  #仅一个且在姓名中,有效
        D[vote[:-1]]=D.get(vote[:-1],0)+1
        NUM+=1
    else:
        f.write(vote)
f.close()        
l=list(D.items())
l.sort(key=lambda s:s[1],reverse=True)
name=l[0][0]
score=l[0][1]
print("有效票数为:{} 当选村长村民为:{},票数为:{}".format(NUM,name,score))


挖空地方:

第6套

五边形÷的是72

使用字典和列表型变量完成最有人气的明星的投票数据分析。投票信息由考生文件夹下文件vote.txt给出,一行只有一个明星姓名的投票才是有效票。有效票中得票最多的明星当选最有人气的明星。

问题1:请统计有效票张数。在考生文件夹下给出了程序框架文件PY202-1.py,补充代码完成程序(7分)

问题2:请给出当选最有人气明星的姓名和票数,在考生文件夹下给出了程序框架文件PY202-2.py,补充代码完成程序(8分)。

# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码

f = open("vote.txt")
names = f.readlines()
f.close()
n = 0
for name in names:
    num = len(name.split())
    if num==1:
        n+=1
print("有效票{}张".format(n))
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码

f = open("vote.txt")
names = f.readlines()
f.close()
D = {}
for name in names:
    if len(name.split())==1:
        D[name[:-1]]=D.get(name[:-1],0) + 1
l = list(D.items())
l.sort(key=lambda s:s[1],reverse=True)
name = l[0][0]
score = l[0][1]
print("最具人气明星为:{},票数为:{}".format(name,score))

第7套

十二边形,30

计算两个列表ls和lt此对应元素乘积的和(即向量积),补充PY202.py文件。

ls = [111,222,333,444,555,666,777,888,999]

lt = [999,777,555,333,111,888,666,444,222]

第8套

使用turtle库的turtle.fd()函数和turtle.left()函数绘制一个边长为200像素的正方形及一个紧挨四个顶点的圆形

获得用户的非数字输入,如果输入中存在数字,则要求用户重新输入,直至满足条件为止,并输出用户输入字符的个数,

第9套

在考生文件夹下有个文件PY201.py,在横线处填写代码,完成如下功能。根据列表中保存的数据采用turtle库画图直方图,显示输出在屏幕上

#
# 在____________上补充代码
# 请不要修改其他代码
#

import turtle as t #更简洁地调用turtle库
ls = [69, 292, 33, 131, 61, 254]
X_len = 400
Y_len = 300
x0 = -200
y0 = -100

t.penup()
t.goto(x0, y0)
t.pendown()

t.fd(X_len)
t.fd(-X_len)
t.seth(90) #设置笔的起始角度
t.fd(Y_len)

t.pencolor('red')
t.pensize(5)
for i in range(len(ls)):
    t.penup()             #提起画笔
    t.goto(x0 + (i+1)*50, y0) #移到绝对坐标处,这里x坐标动,y坐标不动
    t.seth(90)
    t.pendown()           #放下画笔
    t.fd(ls[i])   #表示直线爬行的距离
t.done()

在已定义好的字典pdict里有一些人名及其电话号码。请用户输入一个人的姓名,在字典中查找该用户的信息,如果找到,生成一个四位数字的验证码,并将名字、电话号码和验证码输出在屏幕上,如示例所示。如果查找不到该用户信息,则显示“对不起,您输入的用户信息不存在。”

#
# 在......上补充一行或多行代码
# 不得修改其他代码
#

import random
random.seed(2)
pdict= {'Alice':['123456789'],
        'Bob':['234567891'],
        'Lily':['345678912'],
        'Jane':['456789123']}
name = input('请输入一个人名:')
if name in pdict:
    print("{} {} {}".format(name,pdict.get(name)[0],random.randint(1000,9999)))
else:
    print("对不起,您输入的用户信息不存在。")

第10套

利用random库和turtle库,在屏幕上绘制5个圆圈,圆圈的半径和圆心的坐标由randint()函数产生,圆的X和Y坐标范围在[-100,100]之间;半径的大小范围在[20,50]之间,圆圈的颜色随机在color列表里选择。

#
# 在____________上补充代码
# 请不要修改其他代码
#

import turtle as t
import random as r
color = ['red','orange','blue','green','purple']
r.seed(1)
for i in range(5):
    rad = r.randint(20,50)
    x0 = r.randint(-100,100)
    y0 = r.randint(-100,100)
    t.color(r.choice(color))
    t.penup()
    t.goto(x0,y0)
    t.pendown()
    t.circle(rad)
t.done()

在考生文件夹下有个文件PY202.py,定义了一个6个浮点数的一维列表lt1和一个包含3个数的一维列表lt2。

示例如下:

lt1=[0.69,0.292,0.33,0.131,0.61,0.254]

lt2=[0.1,0.8,0.2]

在横线处填写代码,完成如下功能。计算lt1列表跟lt2列表的向量内积,两个向量X=[x1,x2,x3]和Y=[y1,y2,y3]的内积计算公式如下:

k=x1*y1+x2*y2+x3*y3

将每次计算的两组对应元素的值、以及对应元素乘积的累计和(k)的值显示在屏幕上格式如下所示。

k=0.069,lt2[0]=0.100,lt1[0+0]=0.690

k=0.303,lt2[1]=0.800,lt1[0+1]=0.292

k=0.369,It2[2]=0.200,lt1[0+2]=0.330

... (略)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1523963.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

无人机机载频谱监测方案助力空中频谱监测与干扰排查

作者介绍 一、方案背景 频谱资源是通信最重要的资产之一&#xff0c;随着宽带无线业务的快速增长&#xff0c;对频率资源的需求大幅增加。未来频率资源的供需矛盾将非常突出&#xff0c;空中频谱环境也会越来越复杂&#xff0c;对于工程师来说&#xff0c;在复杂的电磁环境条件…

Unload-labs-pass-03

这里是设置了黑名单不能传.asp.aspx.php.jsp文件 $is_upload false; $msg null; if (isset($_POST[submit])) {if (file_exists(UPLOAD_PATH)) {$deny_ext array(.asp,.aspx,.php,.jsp);$file_name trim($_FILES[upload_file][name]);$file_name deldot($file_name);//删…

GPT-4.5 Turbo详细信息被搜索引擎泄露:有重大改进

3月14日消息&#xff0c;据外电报道&#xff0c;OpenAI 最新人工智能模型 GPT-4.5 Turbo 的详细信息已通过 Bing 和 DuckDuckGo 的搜索引擎索引过早泄露。 GPT-4.5 Turbo 的产品页面在正式发布之前就出现在搜索结果中&#xff0c;引发了人们对 OpenAI 最新型号的特性和功能的猜…

0基础 三个月掌握C语言(11)

字符函数和字符串函数 为了方便操作字符和字符串 C语言标准库中提供了一系列库函数 接下来我们学习一下这些函数 字符分类函数 C语言提供了一系列用于字符分类的函数&#xff0c;这些函数定义在ctype.h头文件中。这些函数通常用于检查字符是否属于特定的类别&#xff0c;例如…

怎么在空闲时间用网络赚钱且收入不低于50?

何其有幸&#xff0c;我们生活在一个网络时代&#xff0c;买东西&#xff0c;生活缴费都可以通过网络来完成&#xff0c;给大家省下了大量的时间和精力&#xff0c;让生活更加便利。不仅如此&#xff0c;还可以通过网络来娱乐、交流&#xff0c;更可以通过它来赚钱。很多朋友上…

嵌入式学习39-程序创建数据库及查找

1.sqlite3_open int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb /* OUT: SQLite db handle */ ); 功能: 打开 数据库文件(创建一个数据库连接) 参数: filename: …

[java基础揉碎]断点调试

一个实际需求: 1.在开发中&#xff0c;新手程序员在查找错误时&#xff0c;这时老程序员就会温馨提示&#xff0c;可以用断点调试&#xff0c; 一步一步的看源码执行的过程&#xff0c;从而发现错误所在。 2.重要提示:在断点调试过程中&#xff0c;是运行状态&#xff0c;是以…

【NBUOJ刷题笔记】递推_递归+分治策略2

0. 前言 PS&#xff1a;本人并不是集训队的成员&#xff0c;因此代码写的烂轻点喷。。。本专题一方面是巩固自己的算法知识&#xff0c;另一方面是给NBU学弟学妹们参考解题思路&#xff08;切勿直接搬运抄袭提交作业&#xff01;&#xff01;&#xff01;&#xff09;最后&…

【Web开发】CSS教学(超详细,满满的干货)

&#x1f493; 博客主页&#xff1a;从零开始的-CodeNinja之路 ⏩ 收录文章&#xff1a;【Web开发】CSS教学(超详细,满满的干货) &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 目录 CSS一. 什么是CSS?1.1 基本语法规范1.2 引入方式1.3 规范 二. CSS选…

JavaScript练手小技巧:数字反转时钟

样式基于博主的这篇文章&#xff1a; CSS3技巧38&#xff1a;3D 翻转数字效果-CSDN博客 既然可以实现翻转数字了&#xff0c;肯定就可以跟 JS 相结合去完成一些数字展示效果。 比如&#xff0c;数字反转时钟。 为了方便&#xff0c;所有 HTML 数字根据时间动态生成。因此&a…

从排序算法的艺术看C语言qsort函数的魅力:一场数据的时空穿越

欢迎来到白刘的领域 Miracle_86.-CSDN博客 系列专栏 C语言知识 先赞后看&#xff0c;已成习惯 创作不易&#xff0c;多多支持&#xff01; 目录 一 、回调函数 二、qsort函数 1.qsort函数排序整型数据 2.qsort函数排序结构数据 一 、回调函数 何为回调函数&#xff1…

【JS进阶】第一天

参考视频——黑马程序员 JavaScript 进阶 - 第 1 天 学习作用域、变量提升、闭包等语言特征&#xff0c;加深对 JavaScript 的理解&#xff0c;掌握变量赋值、函数声明的简洁语法&#xff0c;降低代码的冗余度。 理解作用域对程序执行的影响能够分析程序执行的作用域范围理解闭…

三维坐标系之间的转换

一、概括 这个完全是抄别人的&#xff0c;给我自己看的主要是想当我要看的时候我直接能找到&#xff0c;而不用再去网上搜索&#xff0c;后期会吧代码更新上去。 彻底搞懂“旋转矩阵/欧拉角/四元数”&#xff0c;让你体会三维旋转之美_欧拉角判断动作-CSDN博客 在不同的坐标…

Python语法糖

N u m P y NumPy NumPy的 n d i t e r nditer nditer nditer 是 NumPy 提供的一种多维迭代器&#xff0c;用于对多维数组进行迭代操作。它可以替代传统的嵌套循环&#xff0c;在处理多维数组时更加方便和高效。 迭代器可以按照不同的顺序遍历数组的元素&#xff0c;也可以控制…

✅技术社区—通过Canal框架实现MySQL与ElasticSearch的数据同步

Canal 是一个由阿里巴巴开源的&#xff0c;基于 Java 的数据库变更日志解析的中间件&#xff0c;其原理是基于Binlog订阅的方式实现&#xff0c;模拟一个MySQL Slave 订阅Binlog日志&#xff0c;从而实现CDC&#xff0c;主要用于实现 MySQL 数据库的增量数据同步。它主要的使用…

Linux:PostGreSQL|PostGIS部署

由于更换了云服务器&#xff0c;需要重新部署PostGreSQL|PostGIS&#xff0c;所以记录一下Linux CentOS 7 x86-64环境下&#xff0c;PostGreSQL|PostGIS的部署过程。 参考文档&#xff1a;PostgreSQL: Linux downloads (Red Hat family)。 yum安装PostGreSQL 通过yum安装PostG…

PC-DARTS: PARTIAL CHANNEL CONNECTIONS FOR MEMORY-EFFICIENT ARCHITECTURE SEARCH

PC-DARTS&#xff1a;用于内存高效架构搜索的部分通道连接 论文链接&#xff1a;https://arxiv.org/abs/1907.05737 项目链接&#xff1a;https://github.com/yuhuixu1993/PC-DARTS ABSTRACT 可微分体系结构搜索(DARTS)在寻找有效的网络体系结构方面提供了一种快速的解决方案…

网络编程-套接字相关基础知识

1.1. Socket简介 套接字&#xff08;socket&#xff09;是一种通信机制&#xff0c;凭借这种机制&#xff0c; 客户端<->服务器 模型的通信方式既可以在本地设备上进行&#xff0c;也可以跨网络进行。 Socket英文原意是“孔”或者“插座”的意思&#xff0c;在网络编程…

ROS——ROS安装遇到的问题

1、添加ROS软件源 打开终端&#xff0c;将下面这条命令复制到ubuntu的终端执行 sudo sh -c . /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list2、添加密钥 …

Java面试题总结200道(三)

51、什么是 Spring IOC 容器 Spring 框架的核心是 Spring 容器。容器创建对象&#xff0c;将它们装配在一起&#xff0c;配置它 们并管理它们的完整生命周期。Spring 容器使用依赖注入来管理组成应用程序的 组件。容器通过读取提供的配置元数据来接收对象进行实例化&#xff0…