二级Python语言程序测试卷(一)

本次测试着重考察对Python的应用和理解,共30道题,满分为150,祝你取得好成绩!
以下关于Python语言的叙述,错误的是( )。
Python是一种解释型语言
Python使用缩进来表示代码块
Python 3.x和Python 2.x完全兼容
Python有丰富的标准库和第三方库
以下Python源程序中,正确的导入模块方式是( )。
import math as m
from math import * as m
import m = math
import math m
阅读下列代码:a = 10; def change(a): a = 20; change(a); print(a) 代码执行后输出的结果是( )。
10
20
30
报错
Python中,以下哪种数据类型可以存储不同类型的数据( )。
int
float
list
bool
以下关于Python中函数的说法,正确的是( )。
函数必须有返回值
函数定义时参数必须有默认值
函数可以嵌套定义
函数不能作为参数传递给其他函数
阅读下列代码段:import pickle; data = {'name': 'Alice', 'age': 25}; with open('data.pkl', 'wb') as f: pickle.dump(data, f) 以上代码段的作用是( )。
从文件中读取数据
将数据写入文件
将数据打印到控制台
将数据转换为字符串
以下不属于Python标准库模块的是( )。
os
numpy
datetime
random
以下不是Python中常用的循环语句的是( )。
for
while
do - while
for - else
子类继承父类的属性和方法,在子类中可以进行的操作是( )。
重写父类方法
减少父类属性
改变父类方法参数个数
不能进行任何操作
以下能获取列表list1长度的是( )。
list1.length()
len(list1)
list1.size
list1.getLength()
阅读下列代码段:class Animal: def __init__(self, name): self.name = name; def speak(self): pass; class Dog(Animal): def speak(self): return "Woof!"; dog = Dog("Buddy"); print(dog.speak()) 在下画线处应填入的内容是( )。
super().__init__(name)
Animal.__init__(self, name)
self.init(name)
init(name)
阅读下列代码段:import random; numbers = [1, 2, 3, 4, 5]; print(random. __________ (numbers)) 为保证程序能正确执行,程序中下画线处应填写的是( )。
choice
select
pick
get
以下方法中可用于定义Python线程体的是( )。
start()
run()
init()
main()
以下关于Python中异常处理的说法,错误的是( )。
使用try - except语句捕获异常
可以使用finally块无论是否发生异常都会执行的代码
一个try语句只能对应一个except语句
可以自定义异常类
以下语句中错误的是( )。
a = [1, 2, 3] + [4, 5]
b = (1, 2) + (3, 4)
c = {1: 'a', 2: 'b'} + {3: 'c'}
d = "hello" + "world"
以下关于Python面向对象编程的论述中,正确的是( )。
面向对象编程主要强调函数的复用
类是对象的实例
封装是将数据和操作数据的方法绑定在一起
多态是指一个对象可以有多种类型
当Python脚本作为主程序运行时,以下哪个变量的值为 '__main__'( )。
__name__
__main__
__file__
__package__
阅读下列代码:x = 5; y = 3; print(x if x > y else y) 其运行结果是( )。
3
5
8
2
阅读下列代码:my_list = [1, 2, 3, 4, 5]; new_list = [i * 2 for i in my_list if i % 2 == 0]; print(new_list) 代码运行结果正确的是( )。
[2, 4, 6, 8, 10]
[4, 8]
[2, 6, 10]
[1, 3, 5]
以下方法能够用来实现Python线程之间通信的是( )。
notify()
join()
wait()
send()
以下关于Python中线程的说法中,正确的是( )。
一个线程一旦被创建,就立即开始运行
使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行
当运行状态的线程因为调用了yield()方法而停止运行,它一定被放在可运行线程队列的前面
当因等待对象锁而被阻塞的线程获得锁后,将直接进入运行状态
以下概念中不包括任何实现,与存储空间没有任何关系的是( )。
接口
抽象类
对象
阅读下列一个支持多线程并发操作的队列类代码段:import threading; class MyQueue: def __init__(self): self.queue = []; self.lock = threading.Lock(); def enqueue(self, item): self.lock.acquire(); self.queue.append(item); self.lock.release(); def dequeue(self): self.lock.acquire(); if self.queue: item = self.queue.pop(0); self.lock.release(); return item; else: self.lock.release(); return None; 在下画线处应填入的是( )。
synchronized
wait
blocked
interrupt
阅读下列代码:import threading; class Test(threading.Thread): def run(self): print("Running."); t = Test(); t.start(); 代码运行结果是( )。
将抛出一个异常
没有输出并正常结束
输出“Running”并正常结束
程序第2行将出现一个编译错误
阅读下列代码:s = "Hello, World!"; print(s.upper()) 其运行结果是( )。
hello, world!
HELLO, WORLD!
Hello, World!
报错
以下关于Python线程调度的叙述中,错误的是( )。
调用线程的sleep()方法,可以使比当前线程优先级低的线程获得运行机会
调用线程的yeild()方法,只会使当前线程相同优先级的线程获得运行机会
当有比当前线程的优先级高的线程出现时,高优先级线程将抢占CPU并运行
具有相同优先级的多个线程的调度一定是分时的
调用Python线程的下列方法,不会改变该线程在生命周期中状态的方法是( )。
yield()
wait()
sleep()
isAlive()
在下面Python类方法中的下划线处应填入的正确参数是( )。
Employee[ ] e
"employee.dat"
PrintWriter out
无参数
下面程序段:a = False; b = True; c = a or not b; result = a or not b; 执行完后,正确的结果是( )。
c = False; result = False
c = True; result = True
c = True; result = False
c = False; result = True
在Python的re模块中,用于在字符串中查找所有匹配模式的方法是( )。
static boolean matches()
boolean matcher, find()
list findall()
int matcher, end()

30题 | 被引用864次

模板修改
使用此模板创建