单项选择题8. 下面代码的输出结果是
l1=[1,2,3,2]
l2=['aa','bb','cc','dd','ee']
d={}
for index in range(len(l1)):
d[l1[index]]=l2[index]
print(d)
- A.{1:'aa',2:'dd',3:'cc'}
- B.{1:'aa',2:'bb',3:'cc'}
- C.{1:'aa',2:'bb',3:'cc',2:'dd'}
- D.{1:'aa',2:'bb',3:'cc',2:'bb'}
A B C D
10. 设栈与队列初始状态为空。将元素A,B,C,D,E,F,G,H依次轮流入栈和入队,然后依次轮流出栈和退队,则输出序列为______。
- A.A,B,C,D,H,G,F,E
- B.B,G,D,E,F,C,H,A
- C.D,C,B,A,E,F,G,H
- D.G,B,E,D,C,F,A,H
A B C D
D
[解析] 由于是将元素A,B,C,D,E,F,G,H依次轮流入栈和入队,则依次入栈的元素是A、C、E、G,依次入队的元素是B、D、F、H,栈遵循"先进后出"的原则,队列遵循"先进先出"的原则,依次轮流出栈和退队时,G先出栈,然后B退队,因此答案为D项。
12. 以下程序的输出结果是______。
for i in"Nation":
for k in range(2):
if i=='n':
break
print(i,end=" ")
- A.aattiioo
- B.NNaattiioo
- C.Naattiioon
- D.aattiioonn
A B C D
B
[解析] 在Python中对字母大小写是敏感的,'N'和'n'是不同的字符。本题中,有两层for循环,即每个字符要输出两次,直到i='n'时,跳出循环,执行输出语句。故答案为B项。
13. 下面程序的输出结果是______。
lis1=[1,2,['python']]
lis2=['loves']
lis1[1]=lis2
print(lis1)
- A.[lis2,2,['python']]
- B.[1,['loves'],['python']]
- C.[1,2,'python','loves']
- D.[1,2,['python','loves']]
A B C D
B
[解析] 列表索引序号从0开始,lis1[1]=lis2是将列表lis2赋值并覆盖lis1[1]位置上的元素,运算后lisl=[1,['loves'],['python']]。本题选择B选项。
17. 下面代码的输出结果是______。
for i in range(3):
for i in "dream":
if j=="e":
continue
print(j,end=" ")
- A.dramdramdram
- B.drdrdr
- C.dreamdreamdream
- D.dream
A B C D
A
[解析] continue语句只结束本次循环,不终止整个循环的执行,而break语句具备结束循环的能力。本题外层循环用来计数,内层循环用来遍历字符串,当满足判断条件时,就会结束本次循环进入下一循环,字符串遍历完成之后,外层循环进入下一循环。
30. 下面代码的输出结果是
list1=[]
for i in range(1,11):
list1.append(i**2)
print(list1)
- A.[1,4,9,16,25,36,49,64,81,100]
- B.[2,4,6,8,10,12,14,16,18,20]
- C.错误
- D.1,4,9,16,25,36,49,64,81,100
A B C D
32. 以下程序的输出结果是______。
def fun(x):
try:
retum x*4
except:
return x
print(fun("5"))
A B C D
B
[解析] fun("5")是将字符5赋给形参x,由于5是字符类型,不是数字类型,不能进行数值运算,所以“x*4”是把字符5连续复制4次输出。本题选择B选项。
33. 以下代码的输出结果是______。
d={}
for i in range(26):
d[chr(i+ord("A"))]=chr((i+13)%26+ord("A"))
for c in"Python":
print(d.get(c,c),end="")
- A.Plguba
- B.Cabugl
- C.Python
- D.Cython
A B C D
D
[解析] ord()函数是把字符转换成对应的ASCII码,chr()函数是ord()函数的逆运算,把ASCII码转换成对应的字符输出,所以ord("A")为65。
第一个for循环的作用是生成键值对存储在字典变量d中。例如,当i=0,d[A]=N;i=1,d[B]=O...一直到i=13,d[N]=A,后面的键和值与前面的是互换位置的,如i=14,d[O]=B;i=15,d[P]=C...。依次循环赋值,直到i=25时结束for循环。
第二个for循环的作用是输出字典的值,get(key,default=None)函数有两个参数:第一个参数是字典的键,第二个参数是默认值,作用是返回字典中key对应的值,如果key不存在,则返回默认值,如d={"A":"N","O":"B","Z":"M"},d.get("A","C")返回的是N。当c="P"时,去字典中查找是否存在键为"P"的值,遍历后存在,所以返回C,for循环继续遍历剩下的字符,在字典中找不到对应的键,则返回默认值,所以结果返回为cython。本题选择D选项。
35. 下面代码的输出结果是______。
for i in range(3):
print(i,end=',')
- A.0,1,2
- B.0,1,2,
- C.1,2,3
- D.1,2,3,
A B C D
B
[解析] range()函数与for循环结合使用,一般是可以创建一个整数列表,且range(start,stop[,step])包含三个参数,代表列表的开始和结束以及步长,但其中不包含stop参数的范围,即区间为左闭右开。print()函数的end参数用来没置输出格式,默认为换行。该题表示输出数字之间使用逗号分隔。
39. 下面程序的输出结果是______。
L1=[4,5,6,8]
print(L1.reverse())
- A.[8,6,5,4]
- B.[4,5,6,8]
- C.None
- D.[4,5,6,8,]
A B C D
A
[解析] reverse()方法的作用是将整个列表中的元素反转,第一个元素放在最后一个元素位置上,最后一个元素放在第一个元素位置上,第二个元素放在倒数第二个元素位置上,倒数第二个元素放在第二个元素位置上,最终输出[8,6,5,4]。本题选择A选项。