测验2: Python基本图形绘制
(第2周)
哪个选项不能正确引用turtle库进而使用setup()函数?
A
import turtle as
t
B
import setup from
turtle
C
from turtle
import*
D
import
turtle
正确答案:
B
import只有三种使用方法,以turtle库为例:
import
turtle
from turtle import setup
或 from turtle import
*
import turtle as t
(其中t是别名,可以更换其他名称)
2关于turtle库,哪个选项的描述是错误的?
A
turtle绘图体系以水平右侧为绝对方位的0度
B
turtle库最早成功应用于LOGO编程语言
C
turtle坐标系的原点默认在屏幕左上角
D
turtle库是一个直观有趣的图形绘制函数库
正确答案:
C
turtle坐标系的原点默认在屏幕正中间
3哪个选项是turtle绘图中角度坐标系的绝对0度方向?
A
画布正上方
B
画布正左方
C
画布正右方
D
画布正下方
正确答案:
C
坐标系类似这样,角度坐标系的绝对0度方向是右侧
4哪个选项是下面代码的执行结果?
turtle.circle(-90,90)
A
绘制一个半径为90像素的弧形,圆心在画布正中心
B
绘制一个半径为90像素的弧形,圆心在小海龟当前行进的右侧
C
绘制一个半径为90像素的弧形,圆心在小海龟当前行进的左侧
D
绘制一个半径为90像素的整圆形
正确答案:
B
circle(x, y) 表示
以x长度为半径,y为角度,当前方向左侧x出为圆心,画圆。其中x和y都可以是负数,相应取反。
5关于turtle库绘图函数,哪个选项的描述是错误的?
A
turtle.circle(radius,
extent=None)函数的作用是绘制一个椭圆形,extent参数可选
B
turtle.fd(distance)函数的作用是向小海龟当前行进方向前进distance距离
C
turtle.pensize(size)函数的作用是改变画笔的宽度为size像素
D
turtle.seth(to_angle)函数的作用是设置小海龟当前行进方向为to_angle,to_angle是角度的整数值
正确答案:
A
circle()函数不能绘制椭圆形。
6关于turtle库的画笔控制函数,哪个选项的描述是错误的?
A
turtle.width()和turtle.pensize()都可以用来设置画笔尺寸
B
turtle.penup()的别名有turtle.pu(),turtle.up()
C
turtle.colormode()的作用是设置画笔RGB颜色的表示模式
D
turtle.pendown()作用是落下画笔,并移动画笔绘制一个点
正确答案:
D
turtle.pendown()只是放下画笔,并不绘制任何内容。
7哪个选项不能改变turtle画笔的运行方向?
A
left()
B
bk()
C
seth()
D
right()
正确答案:
B
bk()只能后退,但不改变方向,"后退"不是"转向"。
8哪个选项所列保留字能够实现对一组语句的循环执行?
A
for和in
B
range()
C
if和else
D
while和def
正确答案:
A
循环相关保留字是:for..in和while,但def用于定义函数,不相关。
9哪个选项能够使用turtle库绘制一个半圆形?
A
turtle.fd(100)
B
turtle.circle(100,
-180)
C
turtle.circle(100)
D
turtle.circle(100,
90)
正确答案:
B
circle(x,y)函数的用法,绘制半圆,第二个参数y是180的奇数倍。
10哪个选项对turtle.done()的描述是正确的?
A
turtle.done()放在代码最后,是turtle绘图的必要要求,表示绘制完成
B
turtle.done()用来隐藏turtle绘制画笔,一般放在代码最后
C
turtle.done()用来暂停画笔绘制,用户响应后还可以继续绘制
D
turtle.done()用来停止画笔绘制,但绘图窗体不关闭
正确答案:
D
建议在每个turtle绘图最后增加turtle.done()。
测验4: 程序的控制结构
(第4周)
1
for var in ___:
print(var)
哪个选项不符合上述程序空白处的语法要求?
A
{1;2;3;4;5}
B
"Hello"
C
range(0,10)
D
(1,2,3)
正确答案:
A
for .. in .. 中 in
的后面需要是一个迭代类型(组合类型),B不是Python的有效数据类型。
2
for i in
range(0,2):
print(i)
哪个选项是以上程序的输出结果?
A
1 2
B
0 1
2
C
1
D
0 1
正确答案:
D
range(0,
2)输出两个值:0和1。
3
k=10000
while
k>1:
print(k)
k=k/2
哪个选项给出了上述程序的输出次数?
A
14
B
1000
C
15
D
13
正确答案:
A
请跟随程序计算或在IDLE中运行程序获得结果。
4哪个选项是程序的三种基本结构?
A
顺序结构,循环结构,分支结构
B
过程结构,对象结构,函数结构
C
过程结构,循环结构,分支结构
D
顺序结构,跳转结构,循环结构
正确答案:
A
无对象结构、跳转结构、过程结构等说法。
5哪个选项关于循环结构的描述是错误的?
A
死循环无法退出,没有任何作用
B
循环是一种程序的基本控制结构
C
条件循环和遍历循环结构都是基本的循环结构
D
循环是程序根据条件判断结果向后反复执行的一种运行方式
正确答案:
A
死循环能够用于测试性能,形式上的死循环可以用break来退出,例如:
x =
10
while
True:
x = x - 1
if x == 1:
break
死循环是有其作用的。
6关于Python语句P=-P,哪个选项的描述是正确的?
A
P=0
B
P等于它的负数
C
P的绝对值
D
给P赋值为它的负数
正确答案:
D
Python中的=是赋值符号,==是判断相等性的等于符号。
7哪个选项是用来判断当前Python语句在分支结构中?
A
引号
B
缩进
C
冒号
D
大括号
正确答案:
B
缩进表达层次关系。
8哪个选项是下面代码的执行结果?
for s in
"PYTHON":
if s=="T":
continue
print(s,end="")
A
TT
B
PYHON
C
PY
D
PYTHON
正确答案:
B
continue结束当次循环,但不跳出当前循环。
9
#0031003600320030003000331558342041768哪个选项是random库中用于生成随机小数的函数?
A
randrange()
B
randint()
C
random()
D
getrandbits()
正确答案:
C
B/C/D都产生随机整数,random()产生0到1之间的随机小数。
10关于try-except,哪个选项的描述是错误的?
A
用于对程序的异常进行捕捉和处理
B
表达了一种分支结构的特点
C
使用了异常处理,程序将不会再出错
D
NameError是一种异常类型
正确答案:
C
使用了异常处理,程序可能运行不会出错,但逻辑上可能出错。程序错误是一个大概念,不仅指代码运行错误,更代表功能逻辑错误。
总分
10只看错题隐藏答案
12345678910
下一节:程序题
测验5: 函数和代码复用
(第5周)
以下选项不是函数作用的是:
A
提高代码执行速度
B
增强代码可读性
C
复用代码
D
降低编程复杂度
正确答案:
A
函数不能直接提高代码执行速度。
2
下列程序的输出结果为:
def
f(a,b):
a=4
return
a+bdef main():
a=5
b=6
print(f(a,b),a+b)
main()
A
11
11
B
10
10
C
10 11
D
11
10
正确答案:
C
这里没有全局变量,都是函数局部变量的运算。
3
#0031003600320030003000331558342093439
以下关于Python函数说法错误的是:
def
func(a,b):
c=a**2+b
b=a
return
c
a=10
b=100
c=func(a,b)+a
A
执行该函数后,变量a的值为10
B
该函数名称为func
C
执行该函数后,变量c的值为200
D
执行该函数后,变量b的值为100
正确答案:
C
这里没有全局变量,请在IDLE中执行代码观察结果。
4以下关于函数调用描述正确的是:
A
Python内置函数调用前需要引用相应的库
B
自定义函数调用前必须定义
C
函数在调用前不需要定义,拿来即用就好
D
函数和调用只能发生在同一个文件中
正确答案:
B
函数调用前必须已经存在函数定义,否则无法执行。
Python内置函数直接使用,不需要引用任何模块。
5以下关于模块化设计描述错误的是:
A
应尽可能合理划分功能块,功能块内部耦合度高
B
高耦合度的特点是复用较为困难
C
模块间关系尽可能简单,模块之间耦合度低
D
应尽可能合理划分功能块,功能块内部耦合度低
正确答案:
D
模块内高耦合、模块间低耦合。
6以下对递归描述错误的是:
A
一定要有基例
B
执行效率高
C
书写简单
D
递归程序都可以有非递归编写方法
正确答案:
B
递归不提高程序执行效率。
任何递归程序都可以通过堆栈或队列变成非递归程序(这是程序的高级应用)。
7以下关于函数说法错误的是:
A
对函数的使用必须了解其内部实现原理
B
函数通过函数名来调用
C
函数是一段具有特定功能的、可重用的语句组
D
函数可以看做是一段具有名字的子程序
正确答案:
A
调用函数不需要知道函数内部实现原理,只需要知道调用方法(即接口)即可。
8哪个选项对于函数的定义是错误的?
A
def
vfunc(*a,b):
B
def
vfunc(a,b):
C
def
vfunc(a,b=2):
D
def
vfunc(a,*b):
正确答案:
A
def vfunc(*a, b)
是错误的定义:*a表示可变参数,可变参数只能放在函数参数的最后。
9关于return语句,以下选项描述正确的是:
A
函数可以没有return语句
B
函数中最多只有一个return语句
C
return只能返回一个值
D
函数必须有一个return语句
正确答案:
A
函数可以包含0个或多个return语句
10以下关于递归函数基例的说法错误的是:
A
每个递归函数都只能有一个基例
B
递归函数的基例决定递归的深度
C
递归函数必须有基例
D
递归函数的基例不再进行递归
正确答案:
A
每个递归函数至少存在一个基例,但可能存在多个基例。
总分
10只看错题隐藏答案
12345678910
下一节:程序题
测验6: 组合数据类型
(第6周)
第6章(第6周)测验,共10道单选题和2道编程题,限答1次、限时50分钟,答题后可看答案。
首页
成绩单
单选题
程序题
全屏模式
1
哪个选项是下面代码的输出结果?
d= {'a': 1, 'b': 2, 'b':
'3'}print(d['b'])
A
2
B
{'b':2}
C
1
D
3
正确答案:
D
创建字典时,如果相同键对应不同值,字典采用最后(最新)一个"键值对"。
2
#0031003600320030003000331558341837744S和T是两个集合,哪个选项对S^T的描述是正确的?
A
S和T的差运算,包括在集合S但不在T中的元素
B
S和T的补运算,包括集合S和T中的非相同元素
C
S和T的并运算,包括在集合S和T中的所有元素
D
S和T的交运算,包括同时在集合S和T中的元素
正确答案:
B
集合"交并差补"四种运算分别对应的运算符是:&
| - ^
3
#0031003600320030003000331558341837746以下不是Python序列类型的是:
A
列表类型
B
数组类型
C
字符串类型
D
元组类型
正确答案:
B
Python内置数据类型中没有数组类型。
4序列s,哪个选项对s.index(x)的描述是正确的?
A
返回序列s中序号为x的元素
B
返回序列s中元素x第一次出现的序号
C
返回序列s中x的长度
D
返回序列s中元素x所有出现位置的序号
正确答案:
B
注意:s.index(x)返回第一次出现x的序号,并不返回全部序号。
5
列表ls,哪个选项对ls.append(x)的描述是正确的?
A
向ls中增加元素,如果x是一个列表,则可以同时增加多个元素
B
向列表ls最前面增加一个元素x
C
只能向列表ls最后增加一个元素x
D
替换列表ls最后一个元素为x
正确答案:
C
ls.append(x),如果x是一个列表,则该列表作为一个元素增加的ls中。
6
给定字典d,哪个选项对d.values()的描述是正确的?
A
返回一个列表类型,包括字典d中所有值
B
返回一种dict_values类型,包括字典d中所有值
C
返回一个元组类型,包括字典d中所有值
D
返回一个集合类型,包括字典d中所有值
正确答案:
B
运行如下代码:(其中d是一个预定义的字典)
d={"a":1,
"b":2}type(d.values())
输出结果是:
d.values()返回的是dict_values类型,这个类型通常与for..in组合使用。
7
给定字典d,哪个选项对x
in
d的描述是正确的?
A
x是一个二元元组,判断x是否是字典d中的键值对
B
判断x是否是在字典d中以键或值方式存在
C
判断x是否是字典d中的键
D
判断x是否是字典d中的值
正确答案:
C
键是值的序号,也是字典中值的索引方式。
因此,x in d
中的x被当作d中的序号进行判断。
8
关于Python组合数据类型,以下描述错误的是:
A
组合数据类型可以分为3类:序列类型、集合类型和映射类型
B
组合数据类型能够将多个相同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序、更容易
C
序列类型是二维元素向量,元素之间存在先后关系,通过序号访问
D
Python的字符串、元组和列表类型都属于序列类型
正确答案:
C
序列类型总体上可以看成一维向量,如果其元素都是序列,则可被当作二维向量。
9
关于大括号{},以下描述正确的是:
A
直接使用{}将生成一个元组类型
B
直接使用{}将生成一个集合类型
C
直接使用{}将生成一个字典类型
D
直接使用{}将生成一个列表类型
正确答案:
C
集合类型和字典类型最外侧都用{}表示,不同在于,集合类型元素是普通元素,字典类型元素是键值对。
字典在程序设计中非常常用,因此,直接采用{}默认生成一个空字典。
10
#0031003600320030003000331558341837755关于Python的元组类型,以下选项错误的是:
A
元组中元素必须是相同类型
B
元组采用逗号和圆括号(可选)来表示
C
元组一旦创建就不能被修改
D
一个元组可以作为另一个元组的元素,可以采用多级索引获取信息
正确答案:
A
序列类型(元组、列表)中元素都可以是不同类型。