Python 考试练习题 3
1、关于Python的lambda函数,以下选项中描述错误的是 (B )
A、lambda函数将函数名作为函数结果返回
B、f = lambda x,y:x+y 执行后,f的类型为数字类型
C、lambda用于定义简单的、能够在一行内表示的函数
D、可以使用lambda函数定义列表的排序原则
1.lambda函数
1)称为匿名函数,函数的定义直接使用,不用起名
2)又称一句话函数,使用一行代码表达逻辑
3)用于简单的不会重复多次调用的场景
2.定义形式:sum = lambda x,y:x+y
s = lambda x,y:x+y
print(s(1,2))
3.列表的排序
1)列表排序方法1:list.sort(key = None,reverse=False):使用key为基准排序,reverse表示正序或者逆序,默认False正序
list = [1,4,3,2]
list.sort(reverse=True)
print(list)
2)列表排序方法2:new_list = sorted(iterable,key=None,reverse=False):第一个参数是个list,返回一个新的list
其中的key参数,可以传入一个函数,指定排序的元素,对于这个函数,用lambda可以简化代码
4.排序演练:对学生数据按成绩进行排序 sgrade = [(1001,98),(1002,95),(1003,99),(1004,88)]
1)不可行方法:sgrade.sort() 只会按照第一项进行排序
2)方法1:sgrade.sort(key=lambda x:x[1])
sgrade = [(1001,98),(1002,95),(1003,99),(1004,88)]
sgrade.sort(key=lambda x:x[1])
print(sgrade)
3)方法2:new_list=sorted(sgrade,key=lambda x:x[1])
sgrade = [(1001,98),(1002,95),(1003,99),(1004,88)]
new_list = sorted(sgrade,key=lambda x:x[1])
print(new_list)
x=[
{'name':'2','score':22},
{'name':'4','score':8},
{'name':'1','score':34},
{'name':'7','score':99}
]
x.sort(key=lambda x:x['score'],reverse=True)
print(x)
y=[
(1,33),
(3,65),
(2,22)
]
m=sorted(y,key=lambda x:x[0])
print(m)
B:不一定是数字类型,只要是重载了‘+’运算符的都可以
f=lambda x,y:x+y
print(type(f('a','b')))
2、关于Python循环结构,以下选项中描述错误的是 ( A)
A、每个continue语句只有能力跳出当前层次的循环 跳出本次循环
B、break用来跳出最内层for或者while循环,脱离该循环后程序从循环代码后继续执行
C、遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等
D、Python通过for、while等保留字提供遍历循环和无限循环结构
3、以下选项中,不是Python对文件的打开模式的是 ( D) p190
A、‘r’
B、‘+’
C、‘w’
D、‘c’
4、下面代码的输出结果是:( C) p24
x=10
y=3
print(divmod(x,y))
A、3
B、1
C、(3, 1)
D、(3, 0)
divmod(x,y) 返回的是x/y取商和x/y取余数的结果的元组
5、以下选项中不是 Python 对文件的写操作方法的是 ( D) p195
A、writelines
B、write
C、write 和 seek
D、writetext
6、下面代码的输出结果是 ( B)
d ={"大海":"蓝色", "天空":"灰色", "大地":"黑色"}
print(d["大地"], d.get("大地", "黄色"))
A、黑色 黄色
B、黑色 黑色
C、黑的 灰色
D、黑色 蓝色
Dict.get(key[,value]) 函数如果字典中有关键字key,返回关键字对应的值;如果key不存在,返回value的值,value默认为None
7、给出如下代码,可以输出“python”的是 (B )
s = 'Python is beautiful!'
A、print(s[:–14])
B、print(s[0:6].lower())
C、print(s[0:6])
D、print(s[–21: –14].lower)
s = 'Python is beautiful!'
print(s[:-14])
print(s[0:6].lower())
print(s[0:6])
print(s[-21: -14].lower)
8、关于Python程序中与“缩进”有关的说法中,以下选项中正确的是 (C )
A、缩进统一为4个空格
B、缩进是非强制性的,仅为了提高代码可读性
C、缩进在程序中长度统一且强制使用
D、缩进可以用在任何语句之后,表示语句间的包含关系
9、给出如下代码,下述代码的输出结果是 ( B)
s = "Alice"
print(s[::-1])
A、ALICE
B、ecilA
C、Alic
D、Alice
10、下面代码的输出结果是 (B )
s = "The python language is a cross platform language."
print(s.find('language',30))
A、11
B、40
C、10
D、系统报错
s.find(substr,[start,[end]])返回s中出现的substr的第一个字符的编号,没有substr则返回-1.start与end相当于在s[start:end]中搜索。
本题中有两个language,因为从下标30开始,所以找到的是第二个language
11、给定字典d,以下选项中对d.keys()的描述正确的是 ( C) p135
A、返回一个列表类型,包括字典d中所有键
B、返回一个集合类型,包括字典d中所有键
C、返回一种dict_keys类型,包括字典d中所有键
D、返回一个元组类型,包括字典d中所有键
python2.x 与python3.x之d.keys()返回类型的区别
d ={"大海":"蓝色", "天空":"灰色", "大地":"黑色"}
print(type(d.keys()))
d ={"大海":"蓝色", "天空":"灰色", "大地":"黑色"}
#print(d.keys()[0]) 不能这样访问
print(list(d.keys())[0])
12、给定字典d,以下选项中可以清空该字典并保留变量的是 ( D)
A、del d 删除字典
B、d.remove() 列表有这个方法,字典没有
C、d.pop()
D、d.clear() 清空字典
p119
s.remove(x) 从列表中删除x,若x不存在,抛出ValueError异常
list1=[1,2,'a',34]
print(list1.remove(1))
list1.remove('c')
由此可见,remove()函数的返回值是None
Dict.pop(key[,vslue]) 函数如果字典中有关键字key,删除关键字对应的值;如果key不存在,返回value的值,value默认为None
13、关于Python的元组类型,以下选项中描述错误的是 ( A)
A、元组中元素不可以是不同类型
B、元组一旦创建就不能被修改
C、Python中元组采用逗号和圆括号(可选)来表示
D、一个元组可以作为另一个元组的元素,可以采用多级索引获取信息
tuple1=(1,"a",2.33)
print(tuple1)
14、关于Python文件打开模式的描述,以下选项中错误的是 ( C) p190
A、只读模式r
B、追加写模式a
C、创建写模式n
D、覆盖写模式w
15、两次调用文件的write方法,以下选项中描述正确的是(A ) p195
A、连续写入的数据之间无分隔符
B、连续写入的数据之间默认采用换行分隔
C、连续写入的数据之间默认采用空格分隔
D、连续写入的数据之间默认采用逗号分隔
write()方法每次执行完不换行,若需换行,在字符串末尾加换行符'\n'
fo=open("D://Python text.txt","w")
fo.write("python:")
fo.write("helloworld\n")
fo.write("yes")
fo.close()
16、下面代码的输出结果是 ( C)
a=[5,1,3,4]
print(sorted(a,reverse = True))
A、 [1, 3, 4, 5]
B、[5, 1, 3, 4]
C、[5, 4, 3, 1]
D、[4, 3, 1, 5]
17、以下不能创建一个字典的语句是(C )
A、dict1 = {}
B、dict2 = { 3 : 5 }
C、dict3 ={[1,2,3]: “uestc”} 关键字不能是可变类型
D、dict4 = {(1,2,3): “uestc”}
18、Python不支持的数据类型有( A )
A、char
B、int
C、float
D、list
19、关于Python内存管理,下列说法错误的是 ( B ) p9
A、变量不必事先声明
B、变量无须先创建和赋值而直接使用
C、变量无须指定类型
D、可以使用del释放资源
21、Dict.pop()方法实现的功能是(B) p136
A、返回最后一个元素
B、删除指定键的键值对
C、删除最后一个元素
D、程序报错,无法输出
Dict.pop(key[,vslue]) 函数如果字典中有关键字key,删除关键字对应的值;如果key不存在,返回value的值,value默认为None
22、下面代码的输出结果是 A
print( 0.1 + 0.2 == 0.3)
A、False
B、–1
C、0
D、while
原因:
print(0.1+0.2)
解决:
from decimal import Decimal
a2 = Decimal('1.01')
b2 = Decimal('1.02')
if a2+b2 == Decimal('2.03'):
print('ok')
else:
print('no')
print(a2+b2)
print(type(a2+b2))
23、以下选项中,不是Python语言保留字的是 B
A、except
B、do
C、pass
D、while
Python 33个保留字
and 用于表达式运算,逻辑与操作as 用于类型转换
assert 断言,用于判断变量或条件表达式的值是否为真
break 中断循环语句的执行
class 用于定义类
continue 继续执行下一次循环
def 用于定义函数或方法
del 删除变量或者序列的值
elif 条件语句 与if else 结合使用
else 条件语句 条件语句,与if,elif结合使用。也可以用于异常和循环使用
except 包括捕获异常后的操作代码,与try,finally结合使用
exec 用于执行python语句
for 循环语句
finally 用于异常语句,出现异常后,始终要执行finally包含的代码块。与try,except结合使用
from 用于导入模块,与import结合使用
global 定义全局变量
if 条件语句,与else,elif结合使用
import 用于导入模块,与from 结合使用
in 判断变量是否存在序列中
is 判断变量是否为某个类的实例
lambda 定义匿名函数
not 用于表达式运算,逻辑非操作
or 用于表达式运算,逻辑或操作
pass 空的类,函数,方法的占位符
print 打印语句
raise 异常抛出操作
return 用于从函数返回计算结果
try 包含可能会出现异常的语句,与except,finally结合使用
while 循环语句
with 简化Python的语句
yield 用于从函数依次返回值
24、Python语言中用来定义函数的关键字是 B
A、return
B、def
C、function
D、define
25、ls = [3.5, “Python”, [10, “LIST”], 3.6],ls[2][ –1][1]的运行结果是 A
ls = [3.5, "Python", [10, "LIST"], 3.6]
print(ls[2][-1][1])
A、I
B、P
C、Y
D、L
20、程序语句:
adict={'a':'apple','b':'banana','o':'orange','g':'grape'}
print(adict)