2023年12月电子学会Python一级考试真题及答案解析

1. 下列程序运行的结果是?( )

print('hello')

print('world')

A. helloworld

B. hello

world

C. hello world

D. 'hello''world'

试题编号:20230627-wy-011

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:本题考察的 Python 编程基础,print 在打印时,会在打印的末尾默认加上换行符,所以打印出来的内容是两行。

2. 下列哪段代码可以将画笔颜色设置为红色?( )

A. turtle.pen('red')

B. turtle.fillcolor('red')

C. turtle.colormode('red')

D. turtle.pencolor('red')

试题编号:20230627-wy-019

试题类型:单选题

标准答案:D

试题难度:容易

试题解析:本题考察的 turtle 画笔颜色的设置,画笔的颜色是通过 turtle.pencolor() 来设置的。

3. 运行下列程序打印的结果是?( )

a = '90'

b = '80'

c = int(a)

d = int(b)

print(c + d)

A. 8090 B. 170 C. 80 D. 90

试题编号:20230627-wy-031

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:本题考察的是数学运算符,首先将两个字符串都转换成了整型,所以加法运算,会将两个数字求和,结果就是 170。

4. 如图所示,小明想要将中间柱子的三个盘子转移到右侧的柱子,规则是每次只能挪动一个圆盘,小盘只能放到大盘上边,可以借助左侧的柱子完成任务。请问最少需要几步可以完成这个任务?( )

图片

A. 6 B. 7 C. 8 D. 9

试题编号:20230628-yfj-008

试题类型:单选题

标准答案:B

试题难度:较难

试题解析:小盘只能放到大盘上边,条件限制,所以选B

5. 下列程序运行的结果是?( )

a=5

b=2

a-=b

print(a)

A. 4 B. 1 C. 3 D. 2

试题编号:20230629-wb-009

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:-=是减法赋值运算符的意思,a-=b是表示a=a-b,a-b等于3,所以a=3,选择C。

6. 下列对python变量名命名错误的是?( )

A. 123 B. abc C. _123 D. _abc

试题编号:20230629-wb-014

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:在 Python 中给一个变量命名时,需要遵循以下两个规则,一是变量名由英文字母、下划线_或数字组成,并且第一个字符必须是英文字母或下划线。二是变量名不能是 Python 关键字(又称关键词)。A选项第一个字符是数字所以选择A。

7. 下列哪个选项的代码,可以画出一个直径(注意是直径,不是半径)为100的半圆?( )

A. turtle.circle(100,360) B. turtle.circle(50,180)

C. turtle.circle(100,180) D. turtle.circle(50,360)

试题编号:20230629-wb-024

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:可使用 turtle.circle() 语句画圆,turtle.circle() 语句中,第一个参数是代表圆的半径,第二个参数是代表圆的弧度,直径为100的半圆所以选B。

8. 下列不属于Python保留字符的是?( )

A. Turtle B. if C. import D. for

试题编号:20230630-jy-001

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:Python中的保留字是指被Python内部定义并保留使用的标识字符,包括import、if、else、for等等,turtle是画图库的名字,不是Python的保留字。

9. print(2023 % 10 ** 2)的结果是?( )

A. 200 B. 23 C. 20 D. 20.23

试题编号:20230630-jy-006

试题类型:单选题

标准答案:B

试题难度:困难

试题解析:幂运算**的优先级高于取余%,所以先计算10**2,也就是10*10结果为100,化简为 2023 % 100,也就是计算2023除以100的余数,也就是23,选择B。

10. 执行下列turtle库的指令后,画笔最终为哪种颜色?( )

A. 黄色 B. 红色 C. 蓝色 D. 绿色

试题编号:20230630-jy-014

试题类型:单选题

标准答案:B

试题难度:较难

试题解析:Python中代码从上往下依次执行,先执行pencolor()函数,只改变画笔颜色为蓝色;再执行color()函数,画笔颜色会改变为红色,填充颜色会变为绿色;最后执行fillcolor()函数,只改变填充颜色为黄色。故最终画笔颜色为红色,选B选项。

11. 下列哪个软件或者编辑器不能打开Python3的程序?( )

A. VSCode B. Python Sell-IDLE

C. Jupyter Notebook D. 官方的Scratch

试题编号:20230630-lkc-001

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:官方的未经修改的Scratch是不能打开Python程序的,所以 选D 

12. 运行程序:print(not(5*2+6) > 8+3*3),它的输出结果是?( )

A. False B. True C. 1 D. 无法确定

试题编号:20230630-lkc-023

试题类型:单选题

标准答案:B

试题难度:较难

试题解析:首先,根据运算符优先级,首先计算括号内的表达式 5*2+6,得到结果 16。

接下来计算 8+3*3,得到结果 17。

然后,应用逻辑运算符 not,对表达式 16 > 17 的结果取反,即 not(16 > 17),而表达式 16 > 17 运算结果 False,所以 not(16 > 17) 的结果为 True。    

最后,print() 函数输出结果为  True 。

13. 在Python中,语句 print(a,b) 的功能是?( )

A. 打印a, b B. 输出(a, b) C. 输出a, b D. 输出a, b的值

试题编号:20230701-lkc-004

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:在Python中,print(a,b) 是用于将变量 a 和 b 的值输出到标准输出设备(通常是控制台)的函数。

14. 下列哪个表达式最终的结果为整数类型?( )

A. 5.0 % 2 B. 5.0 + 2 C. 5 / 2 D. 5 // 2

试题编号:20230701-lkc-021

试题类型:单选题

标准答案:D

试题难度:较难

试题解析:(1)在 Python中,取余运算符(%)的结果的数据类型与被除数的数据类型相同。所以,A 选项表达式 5.0 % 2 的结果是浮点数。

(2)B 选项表达式 5.0 + 2,其中一个操作数是浮点数类型,所以结果是浮点数类型。

(3)C 选项中的表达式 5 / 2,除法运算的结果是浮点数类型。

(4)D 选项中的表达式 5 // 2,使用双斜杠 // 进行整除运算,结果会被强制转换为整数类型。

15. 想要安装Python,已知以下的操作步骤,请问哪些是必须的?( )

①查看电脑的操作系统 

②找到对应python版本下载

③下载IDLE 

④下载Turtle库

A. ①②③④ B. ①② C. ①②③ D. ②③④

试题编号:20230703-yfj-003

试题类型:单选题

标准答案:B

试题难度:较难

试题解析:IDLE和turtle都是python自带不需要额外安装,所以选B

16. 已知以下指令,想要绘制一个画笔粗细为5,颜色为红色,半径为50的圆,请问正确的排序方式是?( )

① turtle.pencolor("red")

② import turtle

③ turtle.pensize(5)

④ turtle.circle(50)

A. ①②③④ B. ①③②④ C. ②③①④ D. ③④①②

试题编号:20230703-yfj-012

试题类型:单选题

标准答案:C

试题难度:较难

试题解析:必须首先导入turtle库,所以选C

17. 如图所示,一个填充颜色为黑色,边长为100的正方形里边嵌套了一个填充颜色为白色,边长为50的正方形,请问求图形中黑色部分的面积算式是?( )

图片

A. (100*2)-(50*2) B. (100*4)-(50*4) C. (100**2)-(50**2) D. 100*50

试题编号:20230703-yfj-022

试题类型:单选题

标准答案:C

试题难度:较难

试题解析:大正方形面积100**2,小正方形面积是50**2,所以选C

18. 如果想要获取用户输入的字符串,下列选项正确的是?( )

A. input("请输入一个字符串:") B. int(input("请输入一个字符串:"))

C. float(input("请输入一个字符串:")) D. eval(input("请输入一个字符串:"))

试题编号:20230706-sxk-03

试题类型:单选题

标准答案:A

试题难度:较难

试题解析:要获取用户输入的字符串,在使用input()函数获取输入值时,不需要进行类型转换,直接使用input()即可。

19. 在下列Python运算符中,下列哪个运算符具有最高的优先级?( )

A. + B. > C. * D. –

试题编号:20230706-sxk-06

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:Python中的运算符优先级规则如下:

(1)括号优先级:括号具有最高的优先级,可以使用括号来改变表达式的计算顺序。

(2)幂运算符(**):幂运算具有较高的优先级,从右到左进行计算。例如,2 ** 3 ** 2的计算结果是2 ** (3 ** 2),即2的27次方。

(3)乘法、除法和取模运算符(*、/、//、%):这些运算符具有相同的优先级,从左到右进行计算。

(4)加法和减法运算符(+、-):这些运算符具有相同的优先级,从左到右进行计算。

(5)比较运算符(<、>、<=、>=、==、!=):比较运算符具有较低的优先级,从左到右进行计算。

(6)逻辑运算符(and、or、not):逻辑运算符的优先级较低,从左到右进行计算。

故选C

20. 如果a=145,b=90,c=a>b,那么c的值是?( )

A. False B. 90 C. 145 D. True

试题编号:20230706-sxk-18

试题类型:单选题

标准答案:D

试题难度:较难

试题解析:根据题目给出的条件,我们有a = 145和b = 90。接下来,我们需要判断c的值。

条件"c = a > b"表示c的值等于判断a是否大于b的结果。如果a大于b,那么c的值为True。否则,c的值为False。

在这个情况下,a是145,b是90。显然,145大于90,因此c的值为True。

所以,c的值是True。

21. 执行完下列代码后,坐标的位置是?( )

import turtle

turtle.penup()#抬起画笔

turtle.goto(-50,0)

turtle.pendown()

turtle.forward(100)

turtle.right(90)

turtle.forward(100)

turtle.done()

A. (0,0) B. (-50,0) C. (50,-50) D. (50,-100)

试题编号:20230706-sxk-25

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

import turtle #导入Turtle模块。

turtle.penup() #抬起画笔,使其不再绘制轨迹。

turtle.goto(-50,0) #将画笔移动到坐标 (-50,0) 的位置。

turtle.pendown() #放下画笔,开始绘制轨迹。

turtle.forward(100) #向当前方向前进100个单位长度。

turtle.right(90) #右转90度。

turtle.forward(100) #向当前方向前进100个单位长度。

turtle.done() #完成绘制。

根据以上代码,将画布视为一个平面坐标系,则初始点位于 (-50,0) 处。接着,画笔向右移动100个单位长度,则新的位置为 (50,0)。然后,画笔右转90度,再向前移动100个单位长度,则新的位置为 (50,-100)。

22. 下列导入Turtle库的方式正确的是?( )

A. import(turtrle) B. Import turtle

C. import turtle D. import turtrle as

试题编号:20230706-wlh-024

试题类型:单选题

标准答案:C

试题难度:较难

试题解析:使用import turtle语句导入库。

23. 下列程序中,注释的使用有错误,但是不知道有几处是错误的,请找出来有几处错误?( )

01  a = float(input('输入第一条边长:'))  #输入第一条边

02  b = float(input('输入第二条边长:'))  #输入第二条边

03  c = float(input('输入第三条边长:'))  #输入第三条边

04  """

05  求周长的一半

06  '''

07  p = (a+b+c)/2

A. 1处错误 B. 2处错误 C. 3处错误 D. 0处错误

试题编号:20230710-yxy-003

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:多行注释需要成对使用三引号,单行注释不需要使用成对的引号,多行注释可以跨行,无论跨多少行都合适,三引号必须是同样的三引号,不能将三单引号与三双引号混合使用。

24. 观察下列程序,程序运行后输出结果是?( )

图片

A. 7  B. 7.0 C. z= 7  D. z=7.0

试题编号:20230710-yxy-021

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

程序代码相对比较简单,把x,y的值代入表达式中,将表达式按照运算优先级进行运算,再使用print()函数输出变量z的值,已知x=6,y=7,计算后结果为7.0,根据输出格式要求,故输出结果为z=7.0,选项D正确。

25. 在海龟绘图中,turtle具有绝对方向,对应的命令为turtle.setheading(angel),若想要让小海龟面向屏幕的下方,下列指令使用正确的是?( )

A. turtle.setheading(-180) B. turtle.setheading(-90)

C. turtle.setheading(90) D. turtle.setheading(0)

试题编号:20230710-yxy-032

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:在海龟绘图中,对于turtle的绝对方向划分中,屏幕下方为270度或-90度,故正确答案选择B选项。

二、判断题(共10题,共20分)

26. 小海龟初始在坐标 (0,0) 的位置,方向朝左,在执行 turtle.goto(100,0) 后,小海龟会往右移动100,并且方向朝右。( )

试题编号:20230627-wy-026

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:本题考察的是 turtle 的 goto 语句,注意 goto 语句并不会改变海龟的朝向。并且,本题目中,海龟的初始方向也不是朝左,而是朝右。

27. circle(100,steps=4),指的是绘制一个边长是100的正方形。( )

试题编号:20230628-yfj-034

试题类型:判断题

标准答案:错误

试题难度:较难

试题解析:100是圆半径,而不是边长,同时绘制的是菱形,不是正方形。所以错

28. Python语言简洁、易懂、库文件丰富,可以用在很多应用领域。( )

试题编号:20230629-wb-002

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:python语句简洁、易懂、库文件丰富,可以用在很多应用领域,尤其是人工智能领域。

29. 变量名的大小写是没有区别的,Name与name表示的是同一个变量。( )

试题编号:20230629-wb-022

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:变量的名称是有严格的格式的,区分大小写,且变量名由英文字母、下划线_或数字组成,并且第一个字符必须是英文字母或下划线,并不能是python中的保留字。

30. 执行下列语句,输入"学校",程序最终输出的text结果是"小明同学在学校" 。( )

text = input("小明同学在")

print(text)

试题编号:20230630-jy-033

试题类型:判断题

标准答案:错误

试题难度:较难

试题解析:使用input()函数获取输入时,只保存输入的内容,不保存提示语中的内容,故输出变量text时,结果为"学校",本题说法错误。

31. 在IDLE的交互模式启动后,可以直接编写程序并运行,无需切换到脚本模式。( )

试题编号:20230630-jy-035

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:启动交互模式后,会显示提示符:>>>然后可以直接在交互模式下编写程序并运行,本题中说法正确。

32.  Python中的字符串,整型,浮点型三种数据类型之间完全都可以互相转化。( )

试题编号:20230704-yfj-032

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:字符串有些不能转化为其他两种,所以错误

33. 在Python程序中,双引号和三引号都是引号,没有用法区别,可以随意替换。( )

试题编号:20230705-wlh-029

试题类型:判断题

标准答案:错误

试题难度:容易

试题解析:三引号可以跨行使用,双引号不能。故错误

34. print('Hello, World!")代码段会引发报错。( )

试题编号:20230706-sxk-33

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:码中的字符串使用了不匹配的引号,导致语法错误。要么使用双引号表示字符串,要么使用单引号表示字符串。

35. 在Python语言中,变量的定义和赋值是同时进行的,不需要在赋值前定义变量 。( )

试题编号:20230710-yxy-016

试题类型:判断题

标准答案:正确

试题难度:容易

试题解析:在Python语言中,变量的定义和赋值是同时进行的,不需要分开使用两条语句。

三、编程题(共2题,共30分)

36. 编写一个程序,其功能为:从键盘输入任意三位整数,计算这个整数的百位数字、十位数字、个位数字之和,以及它们的平均值,并输出计算结果。

样例如下:

输入:123

输出:6  2.0

试题编号:202312-P1-36

试题类型:编程题

标准答案:

参考程序:

num = input("请输入一个三位整数:")

hundreds = int(num) // 100

tens = int(num) % 100 // 10

ones = int(num) % 10

sum = hundreds + tens + ones

avg = sum / 3

print(sum, avg)

试题难度:较难

试题解析:

评分标准:

(1)有输入函数;(1分)

(2)有数据类型转换语句;(1分)

(3)数据类型转换全部成功;(1分)

(4)应用数位分割算法,正确获取百位、十位、个位的数字;(3分,每个1分)

(5)正确计算百位、十位、个位上的数字之和;(1分)

(6)正确计算平均值;(1分)

(7)正确调用 print() 函数,输出结果。(2分)

37. 十一国庆节期间,爸爸带着小明到北京天安门广场观看升旗仪式。在庄严的国歌声中,五星红旗冉冉升起,小明看到国旗上的五个五角星,想要用Python画一个红五角星,你可以帮帮他吗?(提示:五角星的外角为144度)

图片

要求:

(1)五角星为镂空五角星,如图所示;

(2)五角星的每条边的长度为200;

(3)画笔颜色为红色;

(4)画笔粗细为5;

(5)最后将画笔隐藏。

试题编号:202312-P1-37

试题类型:编程题

标准答案:

参考程序:

import turtle

t=turtle.Turtle()

t.pensize(5)

t.pencolor("red")

t.forward(200)

t.right(144)

t.forward(200)

t.right(144)

t.forward(200)

t.right(144)

t.forward(200)

t.right(144)

t.forward(200)

t.hideturtle()

试题难度:较难

试题解析:

评分标准:

(1)导入库文件正确;(2分)

(2)有前进或者绘制线条的命令;(2分)

(3)转弯命令及角度正确;(每个1分,共计4分)

(4)有画笔颜色工具;(2分)

(5)画笔粗细正确;(2分)

(6)边长符合题意,为200;(2分)

(7)画笔最后隐藏成功;(2分)

(8)五角星工整,符合题目要求。(4分)

▼往期精彩回顾▼

Scratch节日主题案例:神奇圣诞

Scratch游戏作品:纸飞机

2023年厦门市小学生信息学竞赛真题试卷及答案

Scratch节日主题案例:万圣节惊魂

Scratch人工智能案例:3D打印

Scratch案例:音乐可视化模拟器

蓝桥杯青少组 Scratch图形化 高级试卷(带答案)

ScratchJR入门:16节课程及课件

Scratch作品:停车入位

小学信息技术(三年级)15节精品PPT课程

Scratch画笔作品:连杆机构

Scratch数学案例:角度计算器

小学信息技术(三年级)15节精品PPT课程

Scratch画笔案例:机械臂模拟器

少儿编程python教案—做自己的计算器PPT课件

Scratch科普作品:地图拼接

Scratch经典作品:贪吃鱼游戏

Scratch作品:蜗牛

Scratch入门案例:太极图

Scratch游戏作品:泡泡龙(修复版)

2023年12月电子学会Scratch图形化编程一级真题及答案

物联沃分享整理
物联沃-IOTWORD物联网 » 2023年12月电子学会Python一级考试真题及答案解析

发表评论