admin 管理员组

文章数量: 1184232


2025年1月1日发(作者:上海后端培训)

2023年计算机二级《Python语言程序设

计》考试历年真题摘选附带答案

第1卷

一.全考点综合测验(共20题)

1.【问答题】在 Python 中如何实现栈和队列?请举例说明。

2.【单选题】下面不属于软件设计原则的是

A.抽象

B.模块化

C.信息隐蔽

D.自底向上

3.【问答题】Python 语言有哪些语句?

4.【单选题】相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一

致性和

A.可重用性差

B.冗余性

C.非持久性

D. 安全性差

5.【单选题】设 str = 'python' ,想把字符串的第一个字母大写,其他字母还是小

写,正确 的选项是:

(str[0].upper()+str[1:])

(str[1].upper()+str[-1:1])

(str[0].upper()+str[1:-1])

(str[1].upper()+str[2:])

6.【单选题】以下对数值运算操作符描述错误的选项是:

提供了 9 个基本的数值运算操作符

(图片大小可自由调整)

数值运算操作符也叫做内置操作符

二元数学操作符都有与之对应的增强赋值操 作符

数值运算操作符需要引用第三方库 math

7.【单选题】已知 id(ls1) = 4404896968 ,以下程序的输出结果是:

ls1 = [1,2,3,4,5]

ls2 = ls1

ls3 = ()

print(id(ls2),id(ls3))

A.4404896968 4404896904

B.4404896904 4404896968

C.4404896968 4404896968

D.4404896904 4404896904

8.【单选题】以下关于程序设计语言的描述,错误的选项是:

语言是一种脚本编程语言

B.汇编语言是直接操作计算机硬件的编程语言

C. 程序设计语言经历了机器语言、汇编语言、脚本语言三个阶段

D.编译和解释的区别是一次性翻译程序还是每次执行时都要翻译程序

9.【单选题】以下程序的输出结果是:

ss = set("htslbht")

sorted(ss)

for i in ss:

print(i,end = '')

t

B. hlbst

C. tsblh

10.【单选题】Python 语言中,以下表达式输出结果为 11 的选项是:

("1+1")

B. print(1+1)

C. print(eval("1+1"))

(eval("1" + "1"))

11.【问答题】Python 语言有哪些运算符?请列表说明它们各自的运算优先级。

12.【问答题】请用 Python 语言编写一个简易的计算器程序。

(图片大小可自由调整)

13.【单选题】表达式 eval('500/10') 的结果是:

A.‘500/10 ’

B.500/10

C.50

D. 50.0

14.【单选题】下列叙述中正确的是

A.一个算法的空间复杂度大,则其时间复杂度必定小

B.一个算法的空间复杂度大,则其时间复杂度也必定大

C.算法的时间复杂度与空间复杂度没有直接关系

D.一个算法的时间复杂度大,则其空间复杂度必定小

15.【单选题】下列关于栈的叙述中正确的是

A.在栈中只能插入数据

B.在栈中只能删除数据

C.栈是先进先出的线性表

D.栈是先进后出的线性表

16.【单选题】以下选项错误描述的是

是数据定义语言

B. DML 是数据操纵语言

是数据控制语言

是数据库系统

17.【单选题】函数表达式 all([1,True,True]) 的结果是:

A.无输出

C.出错

18.【单选题】表达式 type(eval('45')) 的结果是:

A.

B.

D.

19.【单选题】一些重要的程序语言(如 C 语言和 Pascal 语言)允许过程的递归调

用。而 实现递归调用中的存储分配通常用

(图片大小可自由调整)

A.栈

B. 堆

C.链表

D.数组

20.【单选题】执行以下程序,输入 ”93python22”,输出结果是:

w = input( ‘请输入数字和字母构成的字符串: ’)

for x in w:

if '0'9322

B. python

C.93python22

D. 9322

第2卷

一.全考点综合测验(共20题)

1.【单选题】在面向对象方法中,一个对象请求另一对象为其服务的方式是通过

发送

A.调用语句

B. 命令

C.口令

D.消息

2.【单选题】以下关于循环结构的描述,错误的是:

A.遍历循环使用 for in 语句,其中循环结构不能是文件

B.使用 range() 函数可以指定 for 循环的次数

i in range(5) 表示循环 5 次,i 的值是从 0 到 4

D.用字符串做循环结构的时候,循环的次数是字符串的长度

3.【单选题】以下程序的输出结果是:

img1 = [12,34,56,78]

img2 = [1,2,3,4,5]

def displ():

print(img1)

def modi():

(图片大小可自由调整)

img1 = img2

modi()

displ()

A.( [1,2,3,4,5])

B.[12, 34, 56, 78]

C. ([12, 34, 56, 78])

D. [1,2,3,4,5]

4.【问答题】请简述 Python 中类方法、实例方法、静态方法各自的区别?并简

述它们各自的用途。

5.【单选题】以下关于字符串类型的操作的描述,错误的是:

e(x,y) 方法把字符串 str 中所有的 x 子串都替换成 y

B.想把一个字符串 str 所有的字符都大写,用 ()

C. 想获取字符串 str 的长度,用字符串处理函数 ()

D.设 x = ’aa’ ,则执行 x*3 的结果是 ‘aaaaaa’

6.【单选题】软件开发离不开系统环境资源的支持,其中必要的测试数据属于

A.辅助资源

B.硬件资源

C.通信资源

D.支持软件

7.【问答题】请分别举例说明遍历列表、元组、字典和集合中各元素的方法。

8.【单选题】以下关于列表和字符串的描述,错误的是:

A.列表使用正向递增序号和反向递减序号的索引体系

B.列表是一个可以修改数据项的序列类型

C.字符和列表均支持成员关系操作符( in)和长度计算 函数( len())

D.字符串是单一字符的无序组合

9.【问答题】简述使用 tkinter 模块创建一个图形用户界面应用程序的主要步骤。

10.【单选题】表达式 1001 == 0x3e7 的结果是:

C. true

D. True

(图片大小可自由调整)

11.【单选题】为了提高测试的效率,应该

A.随机选取测试数据

B.在完成编码以后制定软件的测试计划

C. 取一切可能的输入数据作为测试数据

D. 集中对付那些错误群集的程序

12.【单选题】执行以下程序,输入 la,输出结果是:

la = 'python'

try:

s = eval(input(' 请输入整数: '))

ls = s*2

print(ls)

except:

print('请输入整数 ')

B.请输入整数

python

13.【单选题】运行以下程序:

try:

num = eval(input("请输入一个列表 :"))

e ()

print(num)

except :

print("输入的不是列表 ")

从键盘上输入 1,2,3,则输出的结果是:

A.[1,2,3]

B.[3,2,1]

C.运算错误

D.输入的不是列表

14.【单选题】下面不属于软件工程的 3 个要素的是

A.工具

B.过程

C.方法

D.环境

15.【单选题】以下关于函数的描述,错误的是:

(图片大小可自由调整)

A.函数是一种功能抽象

B.使用函数的目的只是为了增加代码复用

C.函数名可以是任何有效的 Python 标识符

D.使用函数后,代码的维护难度降低了

16.【问答题】在 Python 中如何实现二维数组、结构体、结构体数组(二维表) 、

链表?请举例说明。

17.【单选题】在数据管理技术发展过程中,文件系统与数据库系统的主要区别

是数据库系 统具有

A.特定的数据模型

B.数据无冗余

C.专门的数据管理软件

D.数据可共享

18.【单选题】运行以下程序,

x = eval(input())

y = eval(input())

print(abs(x+y))

从键盘输入 1+2 与 4j,则输出结果是:

A.5

B.

C.

D. 5.0

19.【单选题】在软件开发中,需求分析阶段产生的主要文档是

A.用户手册

B.软件集成测试计划

C.软件详细设计说明书

D.软件需求规格说明书

20.【单选题】以下不是程序输出结果的选项是:

import random as r

ls1 = [12,34,56,78]

e(ls1)

print(ls1)

A.[12, 78, 56, 34]

B.[56, 12, 78, 34]

C. [12, 34, 56, 78]

D.[12, 78, 34, 56]

(图片大小可自由调整)

第1卷参考答案

一.全考点综合测验

1.正确答案:

class Stack(object):

def __init__(self):

=[]

def isEmpty(self):

return ==[]

def push(self,item):

(item)

def pop(self):

if y():

raise IndexError,'pop from empty stack'

return ()

def peek(self):

return [-1]

def size(self):

return len()

class Queue:

(图片大小可自由调整)

def __init__(self, head=None):

e = [head]

def enqueue(self, new_element):

(new_element)

def peek(self):

return e[0]

def dequeue(self):

return (0)

2.正确答案:D

3.正确答案:

if 语句、 while 语句、 for 语句

4.正确答案:B

5.正确答案:A

6.正确答案:D

7.正确答案:A

8.正确答案:C

9.正确答案:B

10.正确答案:D

11.正确答案:

算术运算符、位运算符、关系运算符、逻辑运算符、赋值运算符、成员运

算符、身份运算符等

12.正确答案:

from tkinter import *

reset=True

(图片大小可自由调整)

def buttonCallBack(event):

global label

global reset

num=['text']

if num=='C':

label['text']="0"

return

if num in "=":

label['text']=str(eval(label['text']))

reset=True

return

s=label['text']

if s=='0' or reset==True:

s=""

reset=False

label['text']=s+num #主窗口

root=Tk() _title(" 计算器 ") #显示栏 1

label=Label(root,text="0",background="white",anchor="e")

label['width']=35

label['height']=2

(row=1,columnspan=4,sticky=W) #按钮

showText="789/456*123-0.C+"

for i in range(4):

(图片大小可自由调整)

for j in range(4):

b=Button(root,text=showText[i*4+j],width=7)

(row=i+2,column=j)

("",buttonCallBack) showText="()"

for i in range(2):

b=Button(root,text=showText[i],width=7)

(row=6,column=2+i)

("",buttonCallBack) b=Button(root,text="=")

(row=6,columnspan=2,sticky="we")

("",buttonCallBack)

op()

13.正确答案:D

14.正确答案:C

15.正确答案:D

16.正确答案:D

17.正确答案:D

18.正确答案:D

19.正确答案:A

20.正确答案:C

第2卷参考答案

(图片大小可自由调整)

一.全考点综合测验

1.正确答案:D

2.正确答案:A

3.正确答案:B

4.正确答案:

实例方法只能用实例对象来调用,不能用类对象来调用实例方法。

类方法: 类方法是类对象所拥有的方法,类方法的第一个参数必须是类对

象,可以通过实例对象和类对象去访问类方法,类方法可以对类属性进行修改。

实例方法: 实例方法是类中最常定义的成员方法,它至少有一个参数并且

必须以实例对象作为其第一个参数, 在类外实例方法只能通过实例对象去调用,

不能通过其他方式去调用。

静态方法:静态方法需要通过修饰器 “@staticmethod ”来进行修饰, 静态

方法不需要多定义参数。 静态方法中不需要额外定义参数, 因此如果在静态

方法中引用类属性,则必须通过类对象来引用。

5.正确答案:C

6.正确答案:A

7.正确答案:

列表:列表与 for 循环语句配合使用,可实现对列表各个元素的遍历。

for i in list: print ("序号: %s 值:%s" % ((i) + 1, i)) 元组:元组与 for

循环语句配合使用,可实现对元组各个元素的遍历。示例同列表。

字典:

遍历字典的关键字: ():返回一个包含字典所有关键字的列表,所以

对字典关键字的遍历转换为对列表的遍历。

遍历字典的值: ():返回一个包含字典所有值的列表,所以对字典

值的遍历转换为对列表的遍历。

(图片大小可自由调整)

遍历字典的元素: ():返回一个包含所有 (关键字 ,值)元组的列表,

所以对字典元素的遍历转换为对列表的遍历。

集合:集合与 for 循环语句配合使用,可实现对集合各个元素的遍历。

8.正确答案:D

9.正确答案:

1.导入 Tkinter 模块

2.创建一个顶层窗口对象,来容纳你的整个 GUI 程序

3.在你的顶层窗口对象上(或者其中)创建所有的 GUI 模块(以及功能)

4.把这些 GUI 模块与底层代码相连接

5.进入主事件循环

10.正确答案:B

11.正确答案:D

12.正确答案:C

13.正确答案:D

14.正确答案:D

15.正确答案:B

16.正确答案:

二维数组:列表中嵌套列表

matrix=[[0,0,0],[0,0,0],[0,0,0],[0,0,0]]

结构体:使用字典数据类型实现结构体

当列表的元素也是一个列表时,列表就表示二维矩阵或锯齿阵。

17.正确答案:A

18.正确答案:D

19.正确答案:D

(图片大小可自由调整)

20.正确答案:C

(图片大小可自由调整)


本文标签: 单选题 列表 方法