当前位置:首页 » 《随便一记》 » 正文

《Python程序设计与算法基础教程(第二版)》江红 余青松 课后选择题 课后填空题答案

6 人参与  2022年12月22日 13:29  分类 : 《随便一记》  评论

点击全文阅读


目录

第一章一、选择题二、填空题 第二章一、选择题二、填空题 第三章一、选择题二、填空题 第四章一、选择题二、填空题 第五章一、选择题二、填空题 第八章一、选择题二、填空题

第一章

一、选择题

Python语言属于 C
A.机器语言
B.汇编语言
C.高级语言
D.以上都不是

在下列选项中,不属于Python特点的是 B
C.可移植性
D.免费和开源
A.面向对象
B.运行效率高

在下列选项中,A 是最信用的Pyton版本,也称之为Casiseyrhoip
A. CPython
B. Jython
C. IronPython
D. PyPy

Python内置的集成开发工具是 D
A. PythonWin
B. Pydev
C. IDE
D. IDLE

Python解释器的提示符为 C
A. >
B. >>
C. >>>
D. #

在Python解释器环境中,用于表示上一次运算结果的特殊变量为 B
A. :
B. _
C. >
D. #

A 是Python官方的扩展库索引,所有人都可以下载第三方库或上传自己开发的库到其中。
A. PyPI
B. PyPy
C. Pydev
D. pip

二、填空题

Pyhon语言是一种解释型 、面向对象的计算 机程序设计语言用户编写的Python程序(避免使用依善干系统的特性),无须修改就可以在任何支持Python的平台上运行,这是Python的可移植性在Python3.4以后的版本中,pip用于安装管理Python扩展包,setuptools库用于发布Python包如果要关闭Python解释器,可以使用quit()命令或者按 ctrl+z组合键在Python内置的集成开发环境IDLE中可以使用F5 键运行当前打开的源代码Python注释以符号#开始,到行尾结束在Pyrhon程序中导入sys模块后,可以通过列表sys.argv访问命令行参数,
argv[0]表示Python脚本名;argv[1]表示第1个参数。在Python解释器中,使用help()函数可以进入帮助系统:输入quit()可以退出系统

第二章

一、选择题

在Python中,以下标识符合法的是 A
A. _
B.3C
C. it’s
D. str
B选项数字不能在开头,C选项’在Python表达式中可以使用 A控制运算的优先顺序
A.圆括号()
B.方括号[ ]
C.花括号{}
D.尖括号<>在下列Pyho语句中非法的是 B
A.x=y=1
B.x=(y=1)
C.x,y = y,x
D.x=1; y=1以下Python注释代码不正确的是 D
A. # Python注释代码
B. # Python注释代码1 #Python注释代码2
C.""" Python文档注释""”
D. // Python注释代码
D选项为C,C++,Java的注释方式数学关系式2<x≤10表示成正确的Python表达式为 B
A. 2<x<=10
B. 2<x and x<=10
C. 2<x && x<=10
D. x>2 or x<= 10在Python中,以下赋值语句正确的是 C
A. x+y=10
B. x=2y
C. x=y= 30
D. 3y=x+1为了给整型变量x.y、z赋初值10,下面Python赋值语句正确的是
C
A. xyz=10
B. x=10 y=10 z=10
C. x=y=z=10
D. x=10,y=10,z= 10为了给整型变量 x y z赋初值5,下面Python赋值语句正确的是
A
A. x=5; y=5; z=5
B. xyz=5
C. x,y,z=5
D.x=5, y=5, z=5已知x=2并且y=3,复合赋值语句x =y + 5执行后x变量中的值是 B
A.11
B.16
C.13
D. 26
x = x
(y+5) = 2*8 =16在整型变量x中存放了一个两位数,如果要将该两位数的个位数字和十位数字交换位置, 例如将13变成31,以下Python表达式正确的是 A
A. (x % 10) * 10 + x // 10
B.(x % 10) // 10 + x // 10
C.(x / 10) % 10 + x // 10
D. (x % 10) * 10 + x % 10下列与数学表达式 (cd)/(2ab) 对应的Python表达式不正确的是
C
A. c* d / (2 * a * b)
B. c / 2 * d / a / b
C. c * d / 2 * a * b
D. c * d / 2 / a / b
C = abcd/2

二、填空题

Python 语句分为 简单语句和复合语句Python使用缩进格式划分语句块在Python中如果语句太长,可以使用 \ 作为续行符在Python中一行书写两条语句时,语句之间可以使用 ;作为分隔符。Python使用符号 #标示注释。在Python中要表示一个空的代码块,可以使用空语句 pass计算2^32 - 1的Python表达式可以书写为 2**32 - 1 Python 表达式 4.5/2 4.5//2 和 4. 5%2的值分别为 2.25 2.0 0.5Python表达式12/4 - 2 + 5 * 8 / 4 % 5 / 2的值为 1.0
3.0 - 2 + 0 = 1.0Python 中的大部分对象均为不可变对象,例如 int str string tuple等, list dict等则为可变对象Python提供了两个对象身份比较运算符的 is和 is not来测试两个变量是否指向同一个对象;通过内置函数 type来测试对象的类型;通过 == 运算符判断两个变量指向的对象的值是否相同。Python 语句序列“a,b=3,4; a,b = b,a; print(a,b)”的执行结果是 4 3

第三章

一、选择题

下面的Pyrhon循环体的执行次数与其他不同的是 A
A. i=0
     ~~~~     while(i <= 10):
           ~~~~~~~~~~           print(i)
           ~~~~~~~~~~           i = i + 1
B.i = 10
     ~~~~     while(i>0):
           ~~~~~~~~~~           print(i)
           ~~~~~~~~~~           i=i-1
C. for i in range(10):
           ~~~~~~~~~~           print(i)
D. for i in rarge(10, 0, -1):
           ~~~~~~~~~~           print(i)
A 11次 B 10次 C 10次 D10次

执行下列Python语句将产生的结果是 A
x=2;y=2.0
if(x==y): print(“Equal”)
else: print(“Not Equal”)
A. Equal
B. Not Equal
C.编译错误
D.运行时错误

执行下列Python语句将产生的结果是 B
i = 1
if (i): print(True)
else: print(False)
A.输出1
B.输出True
C.输出False
D.编译错误

用if语句表示如下分段函数f(x),下面程序不正确的是 A
f(x) = (2x+ 1) x≥1
       ~~~~~~       = 3x/(x一1) x< 1
A. if(x>=1):f=2 * x+1
f=3 * x/(x- 1)
B. if (x>=1): f=2 * x+1
if (x<1): f=3 * x/(x-1)
C. f = 2 * x+ 1
if (x<1): f=3 * x/(x-1)
D. if (x<1): f=3 * x/(x-1)
else: f= 2 * x+1
找个数代入就可以

下面的if语句统计满足“性别(gender)为男、职称(rank)为教授、年龄(age)小于40岁”条件的人数,正确的语句为 B
A. if (gender == “男" orage<40 and rank == “教授”): n+=1
B. if (gender == “男” and age<40 and rank ==“教授"): n+=1
C. if (gender == “男” and age<40 or rank ==“教授”); n+=1
D. if (gender == “男” or age<40 or rank == “教授”): n+=1

下面的程序段求x和y两个数中的大数, D是不正确的
A. maxMum= x if x > y else y
B.maxNum = math.max(x,y)
C.if (x>y): maxNum = x
else: maxNum = y
D.if (y>=x): maxNum=y
maxNum=x

下面的if语句统计”成绩(score)优秀的男生以及不及格的男生的人数,正确的语句为 C
A. (gender= = “男” and score<60 or score>=90): n+=1
B. if(gender == “男” and score<60 and score>=90): n+=1
C. if (gender ==“男” and (score<60 or score>=90)): n+=1
D. if (gender = = “男” or score<60 or score>=90): n+=1

用 if 语句表示如下分段函数:
y = x^2-2x+3 x<1
= sqrt(x-1) x≥1
下面程序段不正确的是 B
A. if(x<1):y=x * x- 2 * x + 3
else:y=math.sqrt(x-1)
B. if(x≤1):y = x * x- 2 * x + 3
y = math. sqrt(x-1)
C. y = x * x - 2 * x + 3
if(x>= 1):y= math.sqrt(x-1)
D. if(x<1): y = x * x - 2 * x + 3
if(x>=1):y = math. sqrt(x-1)

在以下语句结构中,A不能完成1~10的累加功能 A
A. for i in range(10,0): total += i
B. for i in range(1,11): total += i
C. for i in range(10,0,-1): total += i
D. for i in (10,9,8,7,6,5,4,3,2,1): total+=i

二、填空题

迭代器是一个对象,表示可迭代的数据集合,包括方法 iter()next(),可实现迭代功能在Python无穷循环whileTrue:的循环体中可以使用 break语句退出循环Python 语句“for i in range(1,21,5): print(i, end=’ ')”的输出结果为 1 6 11 16Python 语句“for iin range(10,1,-2): print(i, end=’ ')”的输出结果为 10 8 6 4 2循环语句for i in range(-3,21,4)的循环次数为 6要使语句for i in range(_,-4,-2)循环执行15次,则循环变量i的初值应当为 25或26执行下列Python语句后的输出结果是 1,循环执行了 1次
i = -1;
while(i<0): i * = i
print(i)

第四章

一、选择题

在下列数据类型中,Python不支持的是 A
A. char
B. int
C. float
D. listPython 语句print(type(1J))的输出结果是 A
A. < class ‘complex’>
B. < class ‘int’>
C. < class ‘float’>
D. < class ‘dict’>
complex复数Python 语句print(type(1/2))的输出结果是 C
A. < class ‘int’>
B. < class ‘number’>
C. < class ‘float’>
D. < class ‘double’>Python语句print(type(1//2))的输出结果是 A
A. < class ‘int’>
B. < class ‘number’>
C. < class 'float ‘>
D. < class ’ double’>Python 语句序列“a=121+ 1.21; print(type(a))”的输出结果是 B
A. < class ‘int’>
B. < class ‘float’>
C, < class ‘double’>
D. < class ‘long’>Python 语句print(0xA + 0xB)的输出结果是 D
A.0xA + 0xB
B.A+B
C.0xA0xB
D.21
0xA十六进制 等于十进制的10
0xB十六进制 等于十进制的11Python语句序列“x= ‘car’; y=2; print(x+y)”的输出结果是 A
A.语法错
B. 2
C.‘car2’
D.‘carcar’Python 表达式sqrt(4) * sqrt(9)的值为 D
C.13. 0
D.6.0
A.36.0
B.1296. 0关于Pyhon中的复数,下列说法错误的是 C
A.表示复数的语法是real+ image j
B.实部和虚部都是浮点数
C.虚部必须后缀为j,且必须是小写
D.方法conjugate()返回复数的共轭复数Python语句print(chr(65))的运行结果是 D
A.65
B.6
C.5
D.A
ord()函数主要用来返回对应字符的ascii码
chr()主要用来表示ascii码对应的字符他的输入时数字,可以用十进制,也可以用十六进制关于Python字符串,下列说法错误的是 B
A.字符即长度为1的字符串
B.字符串以\0标识字符串的结束
C.用户既可以用单引号,也可以用双引号创建字符串
D.在三引号字符串中可以包含换行回车等特殊字符

二、填空题

Python中内置的4种数值类型为 int float complex boolPython 内置的序列数据类型包括 list tuplePython表达式10+5//3-True+False的值为 10
True=1 False=0 Python表达式3 ** 2 ** 3的值为 6651
3 ** 8, 从右向左 Python表达式17.0 / 3 ** 2的值为 1.88888888888888888
17.0 / 9Python表达式 0 and 1 or not 2 < True的值为 True 在这里插入图片描述
同时 < 优先级高于 not and or
在这里插入图片描述
0 and 1 or not False
0 or True
TruePython语句print(pow( -3, 2),round(18.67,1), round(18.67, -1))的输出结果是 9.0 18.7 20.0
在这里插入图片描述
n>0,四舍五入到指定的小数位
n=0, 四舍五入到最接近的整数
n<0 ,在小数点左侧进行四舍五入Python语句print(round(123.84,0), round(123.84,-2), floor(15.5))的输出结果 124.0 100.0 15Python语句print(int(‘20’,16),int(‘101’, 2))的输出结果是 32 5
十六进制的20转十进制 2 * 16=32
二进制的101转十进制 1 * 2^2+1=5Python语句print(hex(16),bin(10))的输出结果是 0x10 0b1010
十进制的16转十六进制 0x10
十进制的10转二进制 0b1010Python语句print(2.5, as_integer_ratio())的输出结果是 (5, 2)Python语句print(float,as_integer_ratio(1.5))的输出结果是 (3, 2)Python语句print(gcd(12, 16), divmod(7,3))的输出结果 4 (2, 1)
gcd 最大公约数
divmod(7,3) 7/3 7%3Python语句print((2-3j).conjugate() * complex(2,3))的输出结果是-5+12j
(2+3j)* (2+3j) = 4 - 9 +12j = -5+12jPython语句print(sum((1,2,3)), sum((1,2,3), 10) )的输出结果是6 16Python语句print(abs(-3.2), abs(1-2j))的输出结果 3.2 2.23606797749979
1-2j的绝对值其实就是这个向量的长度根号5Python的标准随机数生成器模块是 random数学表达式
math库
以下为部分
在这里插入图片描述数学表达式Python的内置字典数据类型为 dictPython语句序列“x=True; y=False; z=False; print(x or y and z);"的运行结果是 True Python语句序列”x=0; y=True;print(x>=y and ‘A’<‘B’)“的运算结果是 False在直角坐标系中,(x,y)是坐标系中任意点的位置,用x和y表示第一象限或者第二象限的Python表达式为 y>0 and x != 0判断整数i能否同时被3和5整除的Python表法达式为 3 % i == 0 and 5 % i == 0已知”a=3; b=5; c=6; d=True“, 则表达式not d or a >= 0 and a+c > b+3的值True
False or True and True
False or True
TruePython表达式 16 - 2 * 5 > 7 * 8 / 2 or “XYZ” != “xyz” and not(10-6> 18 / 2)的值为
False or True and True
False or True
True 执行下列Pthon语句产生的结果是 True False
m = True; n = False; p=True
b1 = m | n ^ p
b2 = n | m ^ p
print(b1,b2)
异或优先级比或高在这里插入图片描述Python语句print(chr(ord(‘B’)))的执行结果是 B Python语句print(“hello” ‘world’)的执行结果是 helloworld

第五章

一、选择题

Python语句print(type([1, 2, 3,4))的运行结果是 D
A. < class ‘tuple’>
B. < class ‘dict’>
C.<class ‘set’>
D.<class ‘list’>Python 语句pintye((1,2, 3, 4))的运行结果是 A
A. < class ‘tuple’>
B. < class ‘dict’>
C.<class ‘set’>
D.<class ‘list’>Python 语句print(type({1, 2, 3, 4))的运行结果是 C
A. < class ‘tuple’>
B. < class ‘dict’>
C. <class ‘set’>
D. < class 'list>Pyhon 语句序列“a = (1,2,3, None,(),[],); print(len(a))的运行结果
是 C
A.4
B.5
C.6
D.7Python 语句序列“nums=set([1,2,2,3,3,3,4]); print(len( nums))"的运行结果 C
A.1
B.2
C.4
D.7Python 语句序列“s= ‘hello’; print(s[1:3])"的运行结果是 D
A.hel
B.he
C.ell
D.elPython语句序列“s1=[4,5.6]; s2=s1; s1[1]=0; print(s2)”的运行结果是 C
A. [4,5,6]
B. [0,5,6]
C. [4,0,6]
D.以上都不能Pyhon语句序列"d=(1: ‘a’,2: ‘b’, c:‘3’); print(len(d))"的运行结果是 C
A.0
B.1
C.3
D.6Python语句序列“a = [1,2,3,None,(),[],]; print(len(a))"的运行结果是
D
A.语法错
B.4
C.5
D.6Python语句prin( ‘\x48\x41!’)的运行结果是 D
A. ‘\x48\x41!’
B. 4841!
C.4841
D. HA!
十六进制48 转为 十进制 4*16 + 8 = 72 即H
同理41即A Python语句序列“s= {‘a’,l,‘b’,2); print(s[‘b’])”的运行结果是 A
A.语法错
B.‘b’
C.1
D.2Python 语句print(r"\nGood")的运行结果是 C
A.新行和字符串Good
B. r"\nGood"
C. \nGood
D.字符r、新行和字符串Good

二、填空题

Python 语句序列"fruits = [‘apple’,‘banana’, ‘pear’]; print(fruits[-1][-1])”的运行结果是 rPython 语句序列“fruits =[‘apple’,‘banana’,‘pear’]; print(fruits.index('apple))"运行结果是 0Python语句序列"fruits=[ ‘apple’ ,‘banana’, ‘pear’]; print( ‘Apple’ in fruits)”的运行结果是 FalsePython语句print(sum(range(10)))的运行结果是 45Python 语句print(’%d%%%d’ % (3/2, 3%2)的运行结果是 1%1
必须是两个%Python语句序列”s1=[1,2,3,4];s.append([5,6]); print(len(s))"的运行结果是 5
[5,6] 一个元素
s1=[1,2,3,4,[5,6]]
Python语句序列"s1=[1,2,3,4]; s2 =[5,6,7]; print(len(s1+s2))"的运行结果是 7Python 语句序列"print(tuple(range(2)), list(range(2)))"的运行结果是(0,1) [0,1]Python 语句序列"print(tuple([1,2,3]), list([1,2,3]))"的运行结果是(1, 2, 3) [1, 2, 3]Python列表解析表达式[i for i in range(5) if i%2 != 0] 和 [i**2 for i in range(3)]的值分别为[1,3] [0,1,4]Python 语句"first, * middles, last = range(6)" 执行后,middles的值为[1,2,3,4]
语句"first, second, third, * lasts = range(6)" 执行后,lasts的值为[3, 4, 5]
语句“*firsts, last3, last2, last1 = range(6)" 执行后firsts的值为[0, 1, 2]
以上结果均为list
语句“first, *middles, last= sorted([86, 85, 99, 88,60, 95, 96])"执行后sum(middles)/len(middles)的值为90.0
注意与可变参数区分
用在变量的前面
向函数传递参数,将变量中可迭代对象的元素拆解出来,作为独立的参数第传给函数
在这里插入图片描述在Python中设有 s = (‘a’,‘b’,‘c’,‘d’,‘e’)
s[2]的值为 ‘c’
s[2:4]的值为(‘c’,‘d’)
s[:3]的值为(‘a’,‘b’,‘c’)
s[1: :2]的值为(‘b’,‘d’)
s[-2]的值为(‘d’)
s[::-1]的值为(‘e’,‘d’,‘c’,‘b’,‘a’)
s[-2:-1]的值为(‘d’,)
s[-2:]的值为(‘d’,‘e’)
s[-99:-5]的值为()
s[-99:-3]的值为(‘a’,‘b’)
s[::]的值为(‘a’,‘b’,‘c’,‘d’,‘e’)
s[1:-1]的值为(‘b’,‘c’,‘d’)在Python 中设有s=[1,2,3,4,5,6]
max(s)值为 6
min(s)值为 1
语句序列“s[: 1]=[];s[: 2]=‘a’;s[2: ]=‘b’; s[2:3]=[‘x’, ‘y’]; del s[: 1]"执行后,s值为[4, ‘x’, ‘y’]
在这里插入图片描述在Python中设有s=[‘a’, ‘b’],则语句序列“s. append([1,2]); s.extend(‘34’);s.extend([5,6]); s.insert(1,7);s. insert(10,8);s. pop(); s.remove(‘b’); s[3: ]=[];s.reverse()"执行后,s 值为[[1, 2], 7, ‘a’]
在这里插入图片描述

第八章

一、选择题

Pytbon语句print(type(lambda:None))的输出结果是D
A.<class ‘NoneTpye’>
B. < class ‘tuple’>
C. <class ‘type’>
D.<class ‘function’>

Python语句序列“f = lambdax,y : x * y; f(12, 34)”的运行结果是D
A.12
B.22
C.56
D.408

Pyhon语句序列"f1 = lambda x : x*2; f2 = lambda x: x** 2;
print( f1(f((2)))的运行结果是D
A. 2
B.4
C.6
D.8

在Python中,若有def f1(p, ** p2): print(type(p2)),则f1(1, a=2)的运行结果是C
A. <class ‘int’>
B. <class ‘type’>
C. < class ‘dict’>
D. < class ‘list’>
函数声明时,通过带*的参数向函数传递可变数量的实参
*后的所有参数被收集为一个tuple
**后的所有参数被收集为一个dict

在Pyhon中,若有def f1(a,b,c); print(a+b),则语句序列“nums=(1,2,3); f1(*nums)”的运行结果是C
A.语法错
B. 6
C.3
D. 1

二、填空题

Python表达式eval(“5/2 + 5%2 + 5//2”) 的结果是 5.5
eval() 函数用来执行一个字符串表达式,并返回表达式的值
2.5 + 1 + 2如果要为定义在函数外的全局变量赋值,可以使用global语句,表明变量是在外面定义的全局变量变量按其作用域大致可以分为局部变量、全局变量和类成员变量在Python的sys模块中,函数getrecursionlimit()和setrecursionlimit()分别用于获取和设置最大递归次数在Python中,使用内置函数locals()和globals()可以查看并输出局部变量和全局变量列表

点击全文阅读


本文链接:http://zhangshiyu.com/post/50186.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1