Python二级考试试题汇总(史上最全)

Posted 编程ID

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python二级考试试题汇总(史上最全)相关的知识,希望对你有一定的参考价值。

Python二级考试试题(一)

✅作者简介:大家好我是编程ID
📃个人主页:编程ID的csdn博客
系列专栏:python
💬推荐一款模拟面试、刷题神器👉点击跳转进入网站
Python精华知识点手册【完整版】下载

  1. 以下关于程序设计语言的描述,错误的选项是:
    A
    Python语言是一种脚本编程语言
    B
    汇编语言是直接操作计算机硬件的编程语言
    C
    程序设计语言经历了机器语言、汇编语言、脚本语言三个阶段
    D
    编译和解释的区别是一次性翻译程序还是每次执行时都要翻译程序
    正确答案: C

表达式 1001 == 0x3e7 的结果是:
A
false
B
False
C
true
D
True
正确答案: B

  1. 以下选项,不是Python保留字的选项是:
    A
    del
    B
    pass
    C
    not
    D
    string
    正确答案: D

  2. 表达式 eval(‘500/10’) 的结果是:
    A
    ‘500/10’
    B
    500/10
    C
    50
    D
    50.0
    正确答案: D

    1. 表达式 type(eval(‘45’)) 的结果是:
      A
      <class ‘float’>
      B
      <class ‘str’>
      C
      None
      D
      <class ‘int’>
      正确答案: D
  3. 表达式 divmod(20,3) 的结果是:
    A
    6, 2
    B
    6
    C
    2
    D
    (6, 2)
    正确答案: D

  4. 以下关于字符串类型的操作的描述,错误的是:
    A
    str.replace(x,y)方法把字符串str中所有的x子串都替换成y
    B
    想把一个字符串str所有的字符都大写,用str.upper()
    C
    想获取字符串str的长度,用字符串处理函数 str.len()
    D
    设 x = ’aa’ ,则执行x*3的结果是‘aaaaaa’
    正确答案: C

  5. 设 str = ‘python’,想把字符串的第一个字母大写,其他字母还是小写,正确的选项是:
    A
    print(str[0].upper()+str[1:])
    B
    print(str[1].upper()+str[-1:1])
    C
    print(str[0].upper()+str[1:-1])
    D
    print(str[1].upper()+str[2:])
    正确答案: A

  6. 以下选项,不属于程序流程图基本元素的是:
    A
    循环框
    B
    连接点
    C
    判断框
    D
    起始框
    正确答案: A

  7. 以下关于循环结构的描述,错误的是:
    A
    遍历循环使用for <循环变量> in <循环结构>语句,其中循环结构不能是文件
    B
    使用range()函数可以指定for循环的次数
    C
    for i in range(5)表示循环5次,i的值是从0到4
    D
    用字符串做循环结构的时候,循环的次数是字符串的长度
    正确答案: A

执行以下程序,输入”93python22”,输出结果是:

w = input(‘请输入数字和字母构成的字符串:’)
for x in w:
    if '0'<= x <= '9':
        continue
    else:
        w.replace(x,'')
print(w)

A
python9322
B
python
C
93python22
D
9322
正确答案: C

执行以下程序,输入la,输出结果是:

la = 'python'
try:
    s = eval(input('请输入整数:'))
    ls = s*2
    print(ls)
except:
    print('请输入整数')

A
la
B
请输入整数
C
pythonpython
D
python
正确答案: C

执行以下程序,输入qp,输出结果是:

k = 0
while True:
    s = input('请输入q退出:')
    if s == 'q':
        k += 1
        continue
    else:
        k += 2
        break
print(k)

A
2
B
请输入q退出:
C
3
D
1
正确答案: A

以下程序的输出结果是:

s = 0
def fun(num):  #s  在函数内无定义。。。。。
    try:
        s += num
        return s
    except:
        return 0
    return 5
print(fun(2))

A
0
B
2
C
UnboundLocalError
D
5
正确答案: A

  1. 以下关于函数的描述,错误的是:
    A
    函数是一种功能抽象
    B
    使用函数的目的只是为了增加代码复用
    C
    函数名可以是任何有效的Python标识符
    D
    使用函数后,代码的维护难度降低了
    正确答案: B

以下程序的输出结果是:

def test( b = 2, a = 4):   
    global z
    z += a * b
    return z
z = 10
print(z, test())

A
18 None
B
10 18
C
UnboundLocalError
D
18 18
正确答案: B
def test( b = 2, a = 4):
global z
z += a * b
return z
z = 10
print(test(),z)
18,18

以下程序的输出结果是:

def hub(ss, x = 2.0,y = 4.0):
    ss += x * y
ss = 10   #无返回值
print(ss, hub(ss, 3))

A
22.0 None
B
10 None
C
22 None
D
10.0 22.0
正确答案: B

  1. 以下表达式,正确定义了一个集合数据对象的是:
    A
    x = 200, ’flg’, 20.3
    B
    x = ( 200, ’flg’, 20.3)
    C
    x = [ 200, ’flg’, 20.3 ]
    D
    x = ‘flg’ : 20.3
    正确答案: A

以下程序的输出结果是:

ss = list(set("jzzszyj"))
ss.sort()
print(ss)

A
[‘z’, ‘j’, ‘s’, ‘y’]
B
[‘j’, ‘s’, ‘y’, ‘z’]
C
[‘j’, ‘z’, ‘z’, ‘s’, ‘z’, ‘y’, ‘j’]
D
[‘j’, ‘j’, ‘s’, ‘y’, ‘z’, ‘z’, ‘z’]
正确答案: B

以下程序的输出结果是:

ss = set("htslbht")
sorted(ss)    #不是原地操作
for i in ss:
    print(i,end = '')

A
htslbht
B
hlbst
C
tsblh
D
hhlstt
正确答案: B

已知id(ls1) = 4404896968,以下程序的输出结果是:

ls1 = [1,2,3,4,5]
ls2 = ls1             
ls3 = ls1.copy()
print(id(ls2),id(ls3))

A
4404896968 4404896904
B
4404896904 4404896968
C
4404896968 4404896968
D
4404896904 4404896904
正确答案: A

以下程序的输出结果是:

ls =list('shandong':200, 'hebei':300, 'beijing':400)
print(ls)

A
[‘300’,‘200’,‘400’]
B
[‘shandong’, ‘hebei’, ‘beijing’]
C
[300,200,400]
D
‘shandong’, ‘hebei’, ‘beijing’
正确答案: B

  1. 以下关于文件的描述,错误的是:
    A
    二进制文件和文本文件的操作步骤都是“打开-操作-关闭”
    B
    open() 打开文件之后,文件的内容并没有在内存中
    C
    open()只能打开一个已经存在的文件
    D
    文件读写之后,要调用close()才能确保文件被保存在磁盘中了
    正确答案: C

以下程序输出到文件text.csv里的结果是:

fo = open("text.csv",'w')
x = [90,87,93]
z = []
for y in x:
    z.append(str(y))
fo.write(",".join(z))
fo.close()

A
[90,87,93]
B
90,87,93
C
‘[90,87,93]’
D
‘90,87,93’
正确答案: B

以下程序的输出结果是:

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]
正确答案: B

  1. 以下关于数据维度的描述,错误的是:
    A
    采用列表表示一维数据,不同数据类型的元素是可以的
    B
    JSON格式可以表示比二维数据还复杂的高维数据
    C
    二维数据可以看成是一维数据的组合形式
    D
    字典不可以表示二维以上的高维数据
    正确答案: D

  2. 以下不属于Python的pip工具命令的选项是:
    A
    show
    B
    install
    C
    download
    D
    get
    正确答案: D

  3. 用Pyinstall工具把Python源文件打包成一个独立的可执行文件,使用的参数是:
    A
    -D
    B
    -L
    C
    -i
    D
    -F
    正确答案: D

以下不是程序输出结果的选项是:

import random as r
ls1 = [12,34,56,78]
r.shuffle(ls1)
print(ls1)

A
[12, 78, 56, 34]
B
[56, 12, 78, 34]
C
[12, 34, 56, 78]
D
[12, 78, 34, 56]
正确答案: C

  1. 以下关于turtle库的描述,正确的是:
    A
    在import turtle之后就可以用circle()语句,来画一个圆圈
    B
    要用from turtle import turtle来导入所有的库函数
    C
    home() 函数设置当前画笔位置到原点,朝向东
    D
    seth(x) 是setheading(x)函数的别名,让画笔向前移动x
    正确答案: C

  2. 一些重要的程序语言(如C语言和Pascal语言)允许过程的递归调用。而实现递归调用中的存储分配通常用
    A

    B

    C
    链表
    D
    数组
    正确答案: A
    因为函数调用是能过将关键寄存器压栈保护现场;在函数返回时,弹栈恢复现场来完成的。
    而递归调用说白了就是自已调用自己。也就是不停的上演pop, push的栈操作。
    系统为什么选用栈来实现函数间的调用呢?我觉的主要原因如下:
    对于频繁的调用操作过程中,栈的pop,push操作最简洁,快速。硬件级(或者理解成汇编级也行)支持栈操作。所以用栈最高效,快速。如果用堆、数组、链表,不光要维护很多功能辅助性数据,算法也很麻烦。这样会大大降低计算机的使用效率。

  3. 下列叙述中正确的是
    A
    一个算法的空间复杂度大,则其时间复杂度必定小
    B
    一个算法的空间复杂度大,则其时间复杂度也必定大
    C
    算法的时间复杂度与空间复杂度没有直接关系
    D
    一个算法的时间复杂度大,则其空间复杂度必定小
    正确答案: C

  4. 为了提高测试的效率,应该
    A
    随机选取测试数据
    B
    在完成编码以后制定软件的测试计划
    C
    取一切可能的输入数据作为测试数据
    D
    集中对付那些错误群集的程序
    正确答案: D

  5. 软件开发离不开系统环境资源的支持,其中必要的测试数据属于
    A
    辅助资源
    B
    硬件资源
    C
    通信资源
    D
    支持软件
    正确答案: A

  6. 完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是
    A
    错误推测法
    B
    白箱测试法
    C
    黑箱测试法
    D
    安装测试法
    正确答案: C

  7. 在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有
    A
    特定的数据模型
    B
    数据无冗余
    C
    专门的数据管理软件
    D
    数据可共享
    正确答案: A

  8. 下列有关数据库的描述,正确的是
    A
    数据库是一个关系
    B
    数据库是一个DBF文件
    C
    数据库是一个结构化的数据集合
    D
    数据库是一组文件
    正确答案: C

  9. 相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和
    A
    可重用性差
    B
    冗余性
    C
    非持久性
    D
    安全性差
    正确答案: B

  10. 软件开发的结构化生命周期方法将软件生命周期划分成
    A
    定义、开发、运行维护
    B
    设计阶段、编程阶段、测试阶段
    C
    总体设计、详细设计、编程调试
    D
    需求分析、功能定义、系统设计
    正确答案: A

  11. 下列不属于结构化分析的常用工具的是
    A
    判定树
    B
    数据字典
    C
    数据流图
    D
    PAD图
    正确答案: C

Python二级考试试题(二)

  1. 关于数据的存储结构,以下选项描述正确的是
    A
    数据所占的存储空间量
    B
    数据在计算机中的顺序存储方式
    C
    数据的逻辑结构在计算机中的表示
    D
    存储在外存中的数据
    正确答案: C

  2. 关于线性链表的描述,以下选项中正确的是
    A
    存储空间不一定连续,且前件元素一定存储在后件元素的前面
    B
    存储空间必须连续,且前件元素一定存储在后件元素的前面
    C
    存储空间必须连续,且各元素的存储顺序是任意的
    D
    存储空间不一定连续,且各元素的存储顺序是任意的
    正确答案: D

  3. 在深度为 7 的满二叉树中,叶子结点的总个数是
    A
    31
    B
    64
    C
    63
    D
    32
    正确答案: B

  4. 关于结构化程序设计所要求的基本结构,以下选项中描述错误的是
    A
    重复(循环)结构
    B
    选择(分支)结构
    C
    goto 跳转
    D
    顺序结构
    正确答案: C

  5. 关于面向对象的继承,以下选项中描述正确的是
    A
    继承是指一组对象所具有的相似性质
    B
    继承是指类之间共享属性和操作的机制
    C
    继承是指各对象之间的共同性质
    D
    继承是指一个对象具有另一个对象的性质
    正确答案: B

  6. 关于软件危机,以下选项中描述错误的是
    A
    软件成本不断提高
    B
    软件质量难以控制
    C
    软件过程不规范
    D
    软件开发生产率低
    正确答案: C

  7. 关于软件测试,以下选项中描述正确的是
    A
    软件测试的主要目的是确定程序中错误的位置
    B
    为了提高软件测试的效率,最好由程序编制者自己来完成软件的测试工作
    C
    软件测试是证明软件没有错误
    D
    软件测试的主要目的是发现程序中的错误
    正确答案: D

  8. 以下选项中用树形结构表示实体之间联系的模型是
    A
    网状模型
    B
    层次模型
    C
    静态模型
    D
    关系模型
    正确答案: B

  9. 设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程(课号,课程名),选课SC(学号,课号,成绩),表SC的关键字(键或码)是
    A
    学号,成绩
    B
    学号,课号
    C
    学号,姓名,成绩
    D
    课号,成绩
    正确答案: B

设有如下关系表:

以下选项中正确地描述了关系表 R、S、T 之间关系的是
A
T=R∪S
B
T=R×S
C
T=R–S
D
T=R∩S
正确答案: C

  1. 关于 Python 程序格式框架的描述,以下选项中错误的是
    A
    Python 语言的缩进可以采用 Tab 键实现
    B
    Python 单层缩进代码属于之前最邻近的一行非缩进代码,多层缩进代码根据缩进关系决定所属范围
    C
    判断、循环、函数等语法形式能够通过缩进包含一批 Python 代码,进而表达对应的语义
    D
    Python 语言不采用严格的“缩进”来表明程序的格式框架
    正确答案: D

  2. 以下选项中不符合 Python 语言变量命名规则的是
    A
    I
    B
    3_1
    C
    _AI
    D
    TempStr
    正确答案: B

  3. 以下关于 Python 字符串的描述中,错误的是
    A
    字符串是字符的序列,可以按照单个字符或者字符片段进行索引
    B
    字符串包括两种序号体系:正向递增和反向递减
    C
    Python 字符串提供区间访问方式,采用 [N:M] 格式,表示字符串中从 N 到 M 的索引子字符串(包含 N 和 M)
    D
    字符串是用一对双引号" "或者单引号’ '括起来的零个或者多个字符
    正确答案: C

  4. 关于 Python 语言的注释,以下选项中描述错误的是
    A
    Python 语言的单行注释以#开头
    B
    Python 语言的单行注释以单引号 ’ 开头
    C
    Python 语言的多行注释以 ’ ’ '(三个单引号)开头和结尾
    D
    Python 语言有两种注释方式:单行注释和多行注释
    正确答案: B

  5. 关于 import 引用,以下选项中描述错误的是
    A
    使用 import turtle 引入turtle 库
    B
    可以使用 from turtle import setup 引入 turtle 库
    C
    使用 import turtle as t 引入 turtle 库,取别名为 t
    D
    import 保留字用于导入模块或者模块中的对象
    正确答案: B

下面代码的输出结果是

x = 12.34print(type(x))

A
<class ‘int’>
B
<class ‘float’>
C
<class ‘bool’>
D
<class ‘complex’>
正确答案: B

  1. 关于 Python 的复数类型,以下选项中描述错误的是
    A
    复数的虚数部分通过后缀“J”或者“j”来表示
    B
    对于复数 z,可以用 z.real 获得它的实数部分
    C
    对于复数 z,可以用 z.imag 获得它的实数部分
    D
    复数类型表示数学中的复数
    正确答案: C

  2. 关于 Python 字符串,以下选项中描述错误的是
    A
    可以使用 datatype() 测试字符串的类型
    B
    输出带有引号的字符串,可以使用转义字符
    C
    字符串是一个字符序列,字符串中的编号叫“索引”
    D
    字符串可以保存在变量中,也可以单独存在
    正确答案: A

  3. 关于 Python 的分支结构,以下选项中描述错误的是
    A
    分支结构使用 if 保留字
    B
    Python 中 if-else 语句用来形成二分支结构
    C
    Python 中 if-elif-else 语句描述多分支结构
    D
    分支结构可以向已经执行过的语句部分跳转
    正确答案: D

  4. 关于程序的异常处理,以下选项中描述错误的是
    A
    程序异常发生经过妥善处理可以继续执行
    B
    异常语句可以与 else 和 finally 保留字配合使用
    C
    编程语言中的异常和错误是完全相同的概念
    D
    Python 通过 try、except 等保留字提供异常处理功能
    正确答案: C

  5. 关于函数,以下选项中描述错误的是
    A
    函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。
    B
    使用函数的主要目的是减低编程难度和代码重用
    C
    Python 使用 del 保留字定义一个函数
    D
    函数是一段具有特定功能的、可重用的语句组
    正确答案: C

  6. 关于 Python 组合数据类型,以下选项中描述错误的是
    A
    组合数据类型可以分为 3 类:序列类型、集合类型和映射类型
    B
    序列类型是二维元素向量,元素之间存在先后关系,通过序号访问
    C
    Python 的 str、tuple 和 list 类型都属于序列类型
    D
    Python 组合数据类型能够将多个同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序、更容易
    正确答案: B

  7. 关于 Python 序列类型的通用操作符和函数,以下选项中描述错误的是
    A
    如果 x 不是 s 的元素,x not in s 返回 True
    B
    如果 s 是一个序列,s = [1,“kate”,True],s[3] 返回 True
    C
    如果 s 是一个序列,s = [1,“kate”,True],s[–1] 返回 True
    D
    如果 x 是 s 的元素,x in s 返回 True
    正确答案: B

  8. 关于 Python 对文件的处理,以下选项中描述错误的是
    A
    Python 通过解释器内置的 open() 函数打开一个文件
    B
    当文件以文本方式打开时,读写按照字节流方式
    C
    文件使用结束后要用 close() 方法关闭,释放文件的使用授权
    D
    Python 能够以文本和二进制两种方式处理文件
    正确答案: B

  9. 以下选项中不是 Python 对文件的写操作方法的是
    A
    writelines
    B
    write 和 seek
    C
    writetext
    D
    write
    正确答案: C

  10. 关于数据组织的维度,以下选项中描述错误的是
    A
    一维数据采用线性方式组织,对应于数学中的数组和集合等概念
    B
    二维数据采用表格方式组织,对应于数学中的矩阵
    C
    高维数据有键值对类型的数据构成,采用对象方式组织
    D
    数据组织存在维度,字典类型用于表示一维和二维数据
    正确答案: D

  11. 以下选项中不是 Python 语言的保留字的是
    A
    except
    B
    do
    C
    pass
    D
    while
    正确答案: B

  12. 以下选项中是 Python 中文分词的第三方库的是
    A
    jieba
    B
    itchat
    C
    time
    D
    turtle
    正确答案: A

  13. 以下选项中使 Python 脚本程序转变为可执行程序的第三方库的是
    A
    pygame
    B
    PyQt5
    C
    PyInstaller
    D
    random
    正确答案: C

  14. 以下选项中不是 Python 数据分析的第三方库的是
    A
    numpy
    B
    scipy
    C
    pandas
    D
    requests
    正确答案: D

下面代码的输出结果是

x = 0o1010print(x)

A
520
B
1024
C
32768
D
10
正确答案: A

下面代码的输出结果是

x=10
y=3print(divmod(x,y))

A
(1, 3)
B
3,1
C
1,3
D
(3, 1)
正确答案: D

下面代码的输出结果是

for s in "HelloWorld":
    if s=="W":
        continue
    print(s,end="")

A
Hello
B
World
C
HelloWorld
D
Helloorld
正确答案: D

给出如下代码:

DictColor = "seashell":"海贝色","gold":"金色","pink":"粉红色","brown":"棕色", "purple":"紫色","tomato":"西红柿色" 

以下选项中能输出“海贝色”的是
A
print(DictColor.keys())
B
print(DictColor[“海贝色”])
C
print(DictColor.values())
D
print(DictColor[“seashell”])
正确答案: D

下面代码的输出结果是

s =["seashell","gold","pink","brown","purple","tomato"]print(s[1:4:2])

A
[‘gold’, ‘pink’, ‘brown’]
B
[‘gold’, ‘pink’]
C
[‘gold’, ‘pink’, ‘brown’, ‘purple’, ‘tomato’]
D
[‘gold’, ‘brown’]
正确答案: D

下面代码的输出结果是
d =“大海”:“蓝色”, “天空”:“灰色”, “大地”:“黑色”print(d[“大地”], d.get(“大地”, “黄色”))
A
黑的 灰色
B
黑色 黑色
C
黑色 蓝色
D
黑色 黄色
正确答案: B

当用户输入abc时,下面代码的输出结果是

try:
   n = 0
   n = input("请输入一个整数: ")
   def pow10(n):
      return n**10except:
   print("程序执行错误")

A
输出:abc
B
程序没有任何输出
C
输出:0
D
输出:程序执行错误
正确答案: B

下面代码的输出结果是

a = [[1,2,3], [4,5,6], [7,8,9]]
s = 0 for c in a:
   for j in range(3):
      s += c[j]print(s)

A
0
B
45
C
以上答案都不对
D
24
正确答案: B

文件 book.txt 在当前程序所在目录内,其内容是一段文本:book,下面代码的输出结果是
txt = open(“book.txt”, “r”)print(txt)
txt.close()
A
book.txt
B
txt
C
以上答案都不对
D
book
正确答案: C

如果当前时间是 2018年5月1日10点10分9秒,则下面代码的输出结果是

import timeprint(time.strftime("%Y=%m-%d@%H>%M>%S", time.gmtime()))

A
2018=05-01@10>10>09
B
2018=5-1 10>10>9
C
True@True
D
2018=5-1@10>10>9
正确答案: A

Python二级考试试题(三)

全国计算机等级考试二级Python真题及解析(10)

  1. 数据库系统的核心是___________。
    A数据库管理系统
    B数据模型
    C软件工具
    D数据库
    正确答案: A

  2. 下列叙述中正确的是___________。
    A线性表链式存储结构的存储空间可以是连续的,也可以是不连续的
    B线性表链式存储结构与顺序存储结构的存储空间都是连续的
    C线性表链式存储结构的存储空间必须是连续的
    D线性表链式存储结构的存储空间一般要少于顺序存储结构
    正确答案: A

  3. 某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层)___________。
    A8
    B12
    C6
    D3
    正确答案: B

  4. 下列叙述正确的是___________。
    A算法的时间复杂度与空间复杂度一定相关
    B数据的逻辑结构与存储结构是一一对应的
    C算法的时间复杂度是指执行算法所需要的计算工作量
    D算法的效率只与问题的规模有关,而与数据的存储结构无关
    正确答案: C

  5. 对长度为n的线性表作快速排序,在最坏情况下,比较次数为___________。
    A n(n-1)/2
    B n(n-1)
    C n-1
    D n
    正确答案: A

  6. 在软件开发中,需求分析阶段产生的主要文档是___________。
    A软件需求规格说明书
    B软件集成测试计划
    C软件详细设计说明书
    D用户手册
    正确答案: A

  7. 下列选项中不属于结构化程序设计原则的是___________。
    A逐步求精
    B逐步求精
    C模块化
    D可封装
    正确答案: D

  8. 设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为
    A学号,课号
    B学号,成绩
    C课号,成绩
    D学号,姓名,成绩
    正确答案: A

  9. 下面叙述错误的是
    A程序调试通常也称为Debug
    B对被调试的程序进行"错误定位"是程序调试的必要步骤
    C软件测试应严格执行测试计划,排除测试的随意性
    D软件测试的目的是发现错误并改正错误
    正确答案: D

  10. 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是
    A编译程序
    B操作系统
    C教务管理系统
    D汇编程序
    正确答案: C

  11. 以下选项不属于 Python 语言特点的是:
    A支持中文
    B平台无关
    C语法简洁
    D执行高效
    正确答案: D

  12. 如果 Python 程序执行时,产生了 “unexpected indent” 的错误,其原因是:
    A代码中使用了错误的关键字
    B代码中缺少“:”符号
    C代码里的语句嵌套层次太多
    D代码中出现了缩进不匹配的问题
    正确答案: D

  13. 以下关于 Python 程序语法元素的描述,错误的选项是:
    A段落格式有助于提高代码可读性和可维护性
    B虽然 Python 支持中文变量名,但从兼容性角度考虑还是不要用中文名
    C true 并不是 Python 的保留字
    D并不是所有的 if、while、def、class 语句后面都要用 ‘:’ 结尾
    正确答案: D

  14. s = " Python", 能够显示输出 Python 的选项是:
    A print(s[0:-1])
    B print(s[-1:0])
    C print(s[:6])
    D print(s[:])
    正确答案: D

    1. 表达式 ‘y’<‘x’ == False 的结果是:
      A True
      B Error
      C None
      D False
      正确答案: D
  15. 以下表达式是十六进制整数的选项是:
    A 0b16
    B ‘0x61’
    C 1010
    D 0x3F
    正确答案: D

17.字符串 s = “I love Python”,以下程序的输出结果是:

s = "I love Python"
ls = s.split()
ls.reverse()
print(ls)

A ‘Python’, ‘love’, ‘I’
B Python love I
C None
D [‘Python’, ‘love’, ‘I’]
正确答案: D

  1. 以下程序的输出结果是:
s=''

ls = [1,2,3,4]
for l in ls:   

    s += str(l)
print(s)

A 1,2,3,4
B 4321
C 4,3,2,1
D 1234
正确答案: D

  1. 以下关于程序控制结构描述错误的是:
    A 单分支结构是用if保留字判断满足一个条件,就执行相应的处理代码
    B二分支结构是用if-else根据条件的真假,执行两种处理代码
    C多分支结构是用if-elif-else处理多种可能的情况
    D在Python的程序流程图中可以用处理框表示计算的输出结果
    正确答案: D

20.ls = [1,2,3,4,5,6], 以下关于循环结构的描述,错误的是:
A表达式 for i in range(len(ls)) 的循环次数跟 for i in ls 的循环次数是一样的
B表达式 for i in range(len(ls)) 的循环次数跟 for i in range(0,len(ls)) 的循环次数是一样的
C表达式 for i in range(len(ls)) 的循环次数跟 for i in range(1,len(ls)+1) 的循环次数是一样的
D表达式 for i in range(len(ls)) 跟 for i in ls 的循环中,i 的值是一样的
正确答案: D

21.以下程序的输出结果是:

j = ''
for i in "12345":

    j += i + ','
print(j)

A 1,2,3,4,5
B 12345
C‘1,2,3,4,5,’
D 1,2,3,4,5,
正确答案: D

22.以下程序的输出结果是:

a = 30

b = 1
if a >=10:

    a = 20
elif a>=20:

    a = 30
elif a>=30:

    b = a
else:

    b = 0
print('a=, b='.format(a,b))

A a=30, b=1
B a=30, b=30
C a=20, b=20
D a=20, b=1
正确答案: D

23.以下程序的输出结果是:

s=''
try:

    for i in range(1, 10, 2):

        s.append(i)
except:

    print('error')
print(s)

A 1 3 5 7 9
B [1, 3, 5, 7, 9]
C, 4, 6, 8, 10
D error
正确答案: D

  1. 以下关于 python 函数使用的描述,错误的是:
    A函数定义是使用函数的第一步
    B函数被调用后才能执行
    C函数执行结束后,程序执行流程会自动返回到函数被调用的语句之后
    D Python 程序里一定要有一个主函数
    正确答案: D

  2. 以下关于函数参数和返回值的描述,正确的是:
    A采用名称传参的时候,实参的顺序需要和形参的顺序一致
    B可选参数传递指的是没有传入对应参数值的时候,就不使用该参数
    C函数能同时返回多个参数值,需要形成一个列表来返回
    D Python支持按照位置传参也支持名称传参,但不支持地址传参
    正确答案: D

以下程序的输出结果是:

def calu(x = 3, y = 2, z = 10):

    return(x ** y * z)

h = 2

w = 3
print(calu(h,w))
A90
B70
C60
D80

正确答案: D

以下程序的输出结果是:

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( [1,2,3,4,5])
D[12, 34, 56, 78]
正确答案: D

28.以下关于组合数据类型的描述,错误的是:
A集合类型是一种具体的数据类型
B序列类似和映射类型都是一类数据类型的总称
C python 的集合类型跟数学中的集合概念一致,都是多个数据项的无序组合
D 字典类型的键可以用的数据类型包括字符串,元组,以及列表
正确答案: D

  1. 以下关于字典类型的描述,正确的是:
    A字典类型可迭代,即字典的值还可以是字典类型的对象
    B表达式 for x in d: 中,假设d是字典,则x是字典中的键值对
    C字典类型的键可以是列表和其他数据类型
    D字典类型的值可以是任意数据类型的对象
    正确答案: D

30.以下程序的输出结果是:

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

ls2 = [3,4,5,6,7,8]

cha1 = []
for i in ls2:

    if i not in ls1:

        cha1.append(i)
print(cha1)

A(6, 7, 8)
B(1,2,6, 7, 8)
C[1,2,6,7,8]
D[6, 7, 8]
正确答案: D

以下程序的输出结果是:

d = "zhang":"China"
    参考技术A
            

我经历过这么多年的摸爬滚打,面试过也被面试过。现总结与归纳Android开发相关面试题:

1、Activity启动模式有哪些,分别有什么不同?

2、Service启动模式有哪些,对应的生命周期?IntentService呢?

3、ContentProvider的作用,是否支持多线程和多进程

4、Broadcast的注册方式,对应的生命周期是什么,有序和无序那种可以中断广播?

5、AsyncTask的作用,如何使用(包括有哪些方法,能说出同步异步,能说出不同Android版本下的区别加分)

6、有哪些异步的方式?

7、Handler机制

8、Dialog的使用及其生命周期

9、Activity的生命周期,能否改?

10、Fragment的生命周期,能否改?

11、Activity和Fragment如何通信

12、View的绘制机制

13、View的事件传递机制

14、如何监听手势

15、ImageView设置图片显示有哪几种模式,有什么区别?

16、有哪些存储方式

17、SharedPreferences是否支持多进程、多线程

别看以上常问的是入门级的,但是有两三年开发经验能回答圆满的人不多。

1、如何理解Activity的任务亲和性

2、如何让Service为单独的进程

3、IntentService的实现原理

4、LocalBroadcast的作用,实现原理,相对于Broadcast的优势在哪,劣势在哪

5、Handler的缺点,会不会造成内存泄漏,有则如何解决

6、Fragment与Activity的区别和联系

7、Fragment如何缓存布局

8、Fragment与ViewPager的搭配使用,有没有问题重叠问题,怎么解决

9、同时提供侧滑和上下滑动,如何解决事件传播问题

10、是否使用过Design包

11、嵌套滑动理解

12、behavior的原理

13、对设计模式有什么看法,经常使用的有哪些?

中级的稍微偏底层一些,这个主要考察平时是否关注而不是一味地怼业务需求

1、Activity的启动过程

2、Service创建为单独进程会有哪些问题?

3、简述AIDL的构建过程

4、IPC机制有哪些?

5、android多进程通信方式,内部原理

6、App启动的入口在哪?

7、LRU缓存算法

8、Bitmap的有哪几种压缩算法,有啥区别?

9、图片在手机本地存储大小和在内存大小是否一致,为什么,Android默认像素一般占几个字节?

10、第三方框架的熟练程度,如:

11、SharedPreference内部实现原理

12、模块化、插件话、组件化等分别有什么区别,对用有什么好处

13、说说MV * 模式,并画出做过项目的架构图

14、对跨平台方案有哪些了解,使用过哪些? 比如RN

15、对大前端有什么看法,了解多少?使用过什么?

16、对其他语言的了解,kotlin,python、php、c++等

17、兴趣爱好是什么?对未来有什么规划?

目前是一些经常会被问到的,当然只是列举了Android 开发方向的,Java的一些还没列举,比如异常、网络、多线程、JCF等等

以上问题的答案在下面都有详细解答,我们不仅整理了这些资料,而且还有一份长达"635页"的Android资料汇总:

包括:底层原理+项目实战+面试专题

虽说Android早已不像过去那般火爆,但各大厂对于中高级开发者仍旧是求贤若渴,想要获取更丰厚的薪资,打铁还得自身硬。对于框架、源码、原理、项目实操经验,都必须有足够的知识储备,才可以在面试中击败面试官。但是由于网上的资料鱼龙混杂,也不成体系,很多人在自我提升的过程中都头疼不已。 这里就给大家分享一份字节大佬整理的《Android中高级面试题汇总(2022)》,帮助大家系统的梳理中高级Android知识!里面包含了所有Android面试的知识点,刷完进大厂妥妥的

(含:静态内部类和非静态内部类的比较,多态的理解与应用, java方法的多态性理解,java中接口和继承的区别,线程池的好处,详解,单例,线程池的优点及其原理,线程池的优点,为什么不推荐通过Executors直接创建线程池,创建线程或线程池时请指定有意义的线程名称,方便出错时回溯,深入理解ReentrantLock与Condition,Java多线程:线程间通信之Lock,Synchronized 关键字原理,ReentrantLock原理,HashMap中的Hash冲突解决和扩容机制, JVM常见面试题, JVM内存结构,类加载机制/双亲委托…)

(含:Activity知识点, Fragment知识点, Service知识点, Intent知识点…)

(含:屏幕适配,主要控件优化,事件分发与嵌套滚动…)

(含:MVP架构设计,组件化架构…)

(含:启动优化,内存优化,绘制优化,安装包优化…)

(含:开源库源码分析,Glide源码分析,OkHttp源码分析,Retrofit源码分析,RxJava源码分析…)

(含:开源文档,面试合集…)

以上是关于Python二级考试试题汇总(史上最全)的主要内容,如果未能解决你的问题,请参考以下文章

史上最全题库:选择题第1单元 数据结构与算法

2022史上最全Android面试题归纳汇总(附答案解析)

史上最全Python工程师常见面试题集锦,有这一份就够了

史上最全python面试题详解(附带详细答案(持续更新))

Python知识点(史上最全)

史上最全的 Java 新手问题汇总