2024 年 9 月青少年软件编程 Python 等级考试一级真题试卷(含答案和解析)
题数: 37 分数: 100
一、单选题(共 25 题,共 50 分)。
1. 下列选项中关于
语句的作用描述正确的是?()
A. 只设置画笔的颜色为红色
B. 只设置填充的颜色为红色
C. 设置画笔和填充的颜色为红色
D. 设置画笔的颜色为红色,设置画布背景的颜色为红色。
答案: C 。
解析:本题考察的是 turtle 的 color 语句,
语句会将画
笔和填充颜色都设置为红色。
2. 题 print(14+8) 输出的结果是?()
答案: A 。
解析:本题考察的是 print 语句,由于 14+8 不是字符串,所以 print 在打印前
会将表达式 14+8 进行计算,然后打印出来,因而选 A 。
3. 在编写 Python 代码中可以在同一行使用多条语句,语句之间需使用某一符号
进行分隔。下列选项中哪一符号可以将多条语句进行分隔?()
A.
B.
C.
D.
答案: B 。
解析:在编写 Python 代码中可以在同一行使用多条语句,语句之间需使用分号
( ; )进行分隔 ,B 答案正确。
4. 在 Python 中可以使用 setup() 设置画布大小和起始位置,下列哪一项语句可
以将画布大小设置为 500*400 ?()
答案: A 。
解析: setup() 方法第一个参数为画布长,第二个参数为画布的高,第三个和第
四个参数是画布位于屏幕的相对位置。故要将画布大小设置为 500*400 ,只需要
setup(500,400,x,y) 即可, A 选项符合,故本题正确答案为 A 。
5. 在 Python 中,如果 a=5 , b=3 ,那么执行语句 print(a+b==a*b) 的结果是?()
答案: B 。
解析:本题中加减乘除运算的优先级高于比较运算符的优先级,故优先计算加减
乘除, a+b=8 , a*b=15 ,判断 8=15 ,结果是 False ,故本题正确答案为 B 。
6. 题 a=input() , b=input() ,执行语句 print(a+b) ,并输入 1,2 ,结果为?()
答案: D 。
解析:在 Python 中,不论用户输入什么类型的数据, input() 函数的返回结果都
是字符串, a+b 返回的是‘ 1 ’ + ‘ 2 ’的结果 12 。
7. 红星小学三年级评选优秀少先队员的条件是,期末考试语文成 | 绩和数学成 |
绩和英语成 | 绩都必须等于或者高于 90 分,用 Python 程序描述,以下哪个是正
确的?()
答案: C 。
解析:逻辑运算符 and 表示“与运算”, or 表示“或运算”,由逻辑运算符连接
而成的表达式称为逻辑表达式,本题的逻辑表达式中,三种学科的成 | 绩需要同
时满足大于等于 90 分的要求,所以使用 and 运算符连接。
8. 假如从广东到湖南有 2 种不同的出行方式,从湖南到北京有 3 种不同的出行方
式,那么从广东经过湖南再到北京,总共有几种不同的出行方式?()
答案: D 。
解析:从广东到北京的总路线中,包含两个子路线,第一个子路线是广东到湖南,
有 2 种方式,第二个子路线是湖南到北京,有 3 种方式,总路线是由两个子路线
构成的,所以共有 2*3=6 种不同的出行方式。
9. 下面哪个运算符的运算优先级最低?()
答案: C 。
解析:这四个运算符中, B 选项优先级最高,其次是 A 和 D 属于同一个优先级,
C 的优先级最低。
10. 已知 a=2 or False and False, 请问 a 的运算结果是?()
答案: A 。
解析:根据逻辑算符的运算顺序, a=2 or False and False ,先进行 and 计算,
然后进行 or 计算,所以 a=2 。
11. 题 Python 自带的 IDLE 编辑器有两种模式:脚本模式(又称为编辑器模式)
和交互模式(又称为 Shell 模式),下列哪种方法可以实现由交互模式到脚本模
式的切换?()
A. 关闭文件
B. 新建文件
C. 替换文件
D. 运行文件
答案: B 。
解析:考察 Python 自带编程环境 IDLE 的两种编辑模式:脚本模式和交互模式,
编辑器默认打开为交互模式,可以通过新建文件的方式切换到脚本模式 , 所以答
案选 B 。
12. 小明同学正在利用 Python 绘制一个边长为 100 像素的正三角形,目前已经完
成两条边的绘制,箭头为画笔所在位置和方向,如下图所示,请你帮他选择一组
正确的答案将此正三角形绘制完整?()
A.
B.
C.
D.
答案: B 。
解析:绘制正三角形中,需要掌握的是旋转角度的理解,每一次旋转中转动的是
图形的外角度数,正三角形也就是 120 度,所以本题正确答案为 B 。
13. 题 Python 中 3 乘以 5 应该怎样表示?()
答案: B 。
解析:本题考察算术运算符 * ,数学当中用×表示乘号,计算机中用 * 来表示乘号,
所以本题答案为 B 。
14. 题 Python 中,以下哪个选项是将浮点数转换为整数的正确方法?()
答案: A 。
解析: A 选项 int(3.14) 将浮点数 3.14 转换为整数。在 Python 中,当你使用 int()
函数转换一个浮点数时,它会舍去小数部分,将浮点数转换为整数。因此,
int(3.14) 将返回整数 3 。 B 选项 float
将整数 3 转换为浮点数,而不是将浮
点数转换为整数。 float
将返回浮点数 3.0 。 C 选项 str(3.14) 将浮点数 3.14
转换为字符串,而不是整数。 str(3.14) 将返回字符串 "3.14" 。 D 选项 bool(3.14)
将浮点数 3.14 转换为布尔值。在 Python 中,任何非零数字(包括浮点数)转换
为布尔值时都为 True 。因此, bool(3.14) 将返回布尔值 True ,而不是整数。
15. 如果要让 turtle 向左转 45 度,应该使用哪个命令?()
答案: A 。
解析:要让 turtle 向左转 45 度,应该使用以下命令
。
16. 题 Python 中的 != 代表的是?()
A. 反转条件的布尔值
B. 检查左右两边的值是否不相等
C. 检查左右两边的值是否相等
D. 将左右两边值进行交换
答案: B 。
解析:在 Python 中, != 是一个比较运算符,用于检查其左右两边的值是否不相
等。如果两边的值不相等,表达式的结果为 True ,否则为 False 。 A 选项描述的
是逻辑非运算符 not 的作用,它会反转条件的布尔值。 C 选项描述的是等于运算
符 == 的作用,它会检查左右两边的值是否相等。 D 选项描述的操作并不是 Python
中任何运算符的标准行为。
17. 执行下列哪个选项中的代码,能打印出 Scratch Python C++ 的是()
答案: A 。
解析: B 选项打印出来的是 Scratch 、 Python 、 C++ ,是包含有顿号的; C 选项
打印的结果是 Scratch, Python, C++ ,是包含逗号的; D 选项打印的结果是
Scratch + Python + C++ ,包含有加号。所以选 A 。
18. 执行下列哪段代码,画笔移动后不会画出线?()
A.
B.
C.
D.
答案: C 。
19. 执行代码 print(3<=5 and 7>=9) ,打印结果为?()
答案: B 。
解析:在 Python 中,
“ and ”用来判断两个条件是否同时成立。
“ and ”左侧为 False
时,表达式的结果为 False ;“ and ”左侧为 True 时,表达式的结果和“ and ”右
侧部分的结果一致。题干中 3<=5 成立,但是 7>=9 不成立,所以 3<=5 and 7>=9
的结果为 False ,答案为 B 。
20. 以下哪个函数能够绘制一个半径为 60 的圆?()
A.
B.
C.
D.
答案: D 。
解析:画圆用到的语句是 circle ,参数顺序为(半径,角度)根据题意参数应
该为 (60,360) 。
21. 在 Python 中,这个表达式 3*8//4 的计算结果是多少?()
答案: A 。
解析:已知只有乘法和整除运算,说明结果必为整数类型,所以排除 6.0 、 3.0 。
* 和 // 优先级相等,从左到右计算, 3*8 结果为 24 , 24//4 整除结果为 6 。
22. 关于缩进的描述,正确的是?()
A. 在 Python 编码中不需要缩进
B. 缩进的空格数决定了代码块的嵌套级别
C. 缩进仅仅是为了美观,对代码执行没有影响。
D. 缩进是语法错误,不应该在代码中使用。
答案: B 。
解析: Python 编码中需要缩进,缩进的空格数决定了代码块的嵌套级别,缩进
不仅仅是为了美观,对代码执行也有影响,应该在代码中使用。
23. 运行代码 print(float(20)), 输出的结果是以下哪一项?()
答案: B 。
解析: float() 默认保留一位小数,故答案选 B 。
24. 运行以下程序后,画笔的位置坐标是以下哪一个?()
答案: D 。
解析:根据题干程序,画笔首先向默认方向右边移动 50 像素,左转后向上移动
50 像素,右转后再向右移动 50 像素,此时的坐标是 (100,50) ,答案选 D 。
25. 以下哪一项运行后能分两行显示以下诗句?()
A.
B.
C.
D.
答案: C 。
解析:使用三引号 (''' 或 """) 可以指定一个多行字符串,但是前后要一致。
二、判断题(共 10 题,共 20 分)。
26. 在 Python 中,如果 a=4 , b=2 ,那么执行语句 print(type(a**b)) 的结果是
16 。()
答案:错误。
解析:当 a=4 , b=2 时, a**b=16 , type() 函数会返回参数的数据类型, 16 的数
据类型是 <class'int'> ,故本题说法错误。
27. 在 Python 中, ' 龙腾虎跃 ' 是一个字符串类型数据,如果将单引号去掉,它就
变成了整型数据。()
答案:错误。
解析:根据题意,去掉单引号并非整型数据,而是一个变量,至于变量的对象是
什么数据类型,根据题意无法得知。
28. 题 Python 中 # 的符号表示单行注释, ### 进行多行注释。()
答案:错误。
解析: python 的多行注释是 ''' ''' 或 """ """ 。
29. 题 print(int(4.5)==float
) 输出结果是 False 。()
答案:错误。
解析:输出结果为 True 。
30. 在 Turtle 库中,小明设置画笔速度设为 2 ,小红设置画笔速度为 0 ,如果其
他指令完全一致的话,那么小明的绘制速度要快一些。()
答案:错误。
解析: 0 为最快速度。
31. 题 IDLE 交互模式的提示符为 >>>, 脚本模式没有提示符。()
答案:正确。
解析:考察 Python 自带编程环境 IDLE 的两种编辑模式,交互模式的提示符为 >>>,
脚本模式没有提示符。所以,本题答案为正确。
32. 题 turtle 画图库中
不但可以绘制圆或者圆弧,它还可以绘
制正多边形。()
答案:正确。
解析:
可以绘制正多边形, circle() 可以通过第 3 个参数 steps
来设定线段数量,从而实现正多边形的绘制。所以本题答案为正确。
33. 题 else 可以作为变量名。()
答案:错误。
解析:在 Python 中, else 是一个保留字(或称为关键字),它用于 if-else 语
句中,以指定当 if 条件不满足时要执行的代码块。由于 else 是 Python 语言的
一部分,并且有其特定的语法含义,因此它不能用作变量名。
34. 变量名大小写是有区分的,如变量名 age 和 Age 有区别。()
答案:正确。
解析:在 Python 中,变量名是区分大小写的, age 和 Age 是不同的变量名。
35. 题 print 语句可以同时打印多个变量,比如 print(a,b) 就可以打印出变量 a
和 b 的值。()
答案:正确。
解析:本题考察的 print 语句, print 可以同时打印多个变量。
三、编程题(共 2 题,共 30 分)。
36. 小明的生 | 日到了,他收到了很多彩色的气球。现在我们要用 Python 来帮助
小明绘制一个他最喜欢的彩色气球,如下图所示。
要求:
气球为半径 50 的圆,气球线条和填充均为蓝色;
圆(气球)和线条(绳子)的连接位置为画布正中心;
气球的绳子在气球正下方,长度为 100 。颜色不限。
提示:最下方的箭头为海龟默认形状,无需绘制。
友情提示:考试平台暂不支持画笔命名 Pen() 命令,同学们可以选用其他命令;
当然如果使用了 Pen() 命令,只要程序是正确的,阅卷时依然按照正确处理。
参考程序:
评分标准:
导入库文件正确;( 2 分)。
有前进命令;( 2 分)。
有旋转 90 度命令;( 2 分)。
画圆正确;( 2 分)。
颜色正确;( 2 分,线条和填充各 1 分)。
指定坐标正确,气球 2 分,气球绳子 2 分;( 4 分)。
运行正常;( 4 分)。
绘制的图形正确。( 2 分)。
37. 题 2023 年 9 月 23 日晚,第十九届亚洲运动会在浙江省杭州市奥体中心隆重
开幕。为准时参加开幕式,李叔叔一家于 9 月 23 日提前开车前往杭州奥体中心,