2021NOC全国模拟考A卷解析(中学Python)答案分析

2021NOC全国模拟考A卷解析(中学Python)答案分析,第1张

2021NOC全国模拟考A卷解析(中学Python)

1.以下选项中不符合 Python 语⾔变量命名规则的是    

A.LL  

B.3_1

C._AI

D.TempStr

解析:  Python的变量命名不可以使⽤数字开头,  因此B选项不符合命令规则。

2.在使⽤Python *** 作⽂件时  哪个选项可以打开⽂件“codemao.txt”并写⼊内容  (       

A.f = open('codemao.txt', 'r')

B 、f = open('codemao.txt', 'w')

C f = open('codemao.txt', 'rb')

D f.close()

解析:  Python的file⽅法,‘r’以只读⽅式打开⽂件 。⽂件的指针将会放在⽂件的开头;'w'打开⼀ 个⽂件⽤于写⼊ 。如果该⽂件不存在,  创建新⽂件 。  'rb'以⼆进制格式打开⼀ 个⽂件⽤于只读。 ⽂件指针将会放在⽂件的开头 。  因此正确答案为B。

3.下⾯代码的输出结果是    

x = 123.45
pring(type(x))

A.lass 'int'>

B.  

C.  

D.  

解析:  123.45为浮点数,  返回oat,  因此正确答案为B。

4.当⽤户输⼊ace时  下⾯代码的输出结果是

try:
    a = 0
    b = input("请输入一个整数:")
    def X(a):
        return a**10
except:
    print("出现错误")

A.输出:  0

B.输出  出现错误

C.没有任何输出

D.输出  ace

解析:  try语句在执⾏时没有发⽣异常,  不会执⾏except语句,  因此正确答案是C。

5.运⾏下列代码  输出结果是  (

x = [[1,2,3],[4,5,6],[7,8,9]]
y = 0
for i in x:
    for j in range(3):
        y += i[j]
print(y)

A 0

B 、  25

C 、45

D   以上结果均不对

解析:  程序为嵌套循环,  为列表a的累加,  值为45,  因此答案为C。

6.运⾏以下程序的结果是  (    

l1 = [1, 3, 4, 5, 7, 8]
l2 = [1, 4, 5, 6, 7, 9]
temp = []
for i in l2:
    if (i not in l1):
        l1.append(i)
        l2.append(i)
    else:
        temp.append((i ** 2))

A.[1, 4, 5, 6, 7, 9]

B.[1, 16, 25, 36, 49, 81]

C.[1, 3, 4, 5, 7, 8]

D.[1, 16, 25, 49, 36, 81]

解析:  程序先使⽤i遍历l2的值,  如果i的值不存在与l1中,  把该值添加在l1和l2的末尾,  其中6 、 9添加在l2列表的末尾 。在temp列表中依次增加i**2的值,  因此结果为[1, 16, 25, 49, 36, 81], 正确答案是D。

7.下⾯可以通过int()或oat()转换的选项是  (       

A.'NO.1'

B.(1   2 3 4 5)

C.'123.45'

D.[1, 2, 3, 4, 5]

解析:  字符串'123.45'可以通过float()函数转化为浮点数,  因此正确答案是C。

8、阅读下⾯程序  补充在空位①  ②数字  输出结果为2的选项  (  

A. 12, 6

B. 9, 5

C. 10, 7

D.11, 4

解析:  在func()函数的参数为12,6时,  程序会从2到12迭代,  在循环体内,  s的值为s+m取余i,  将取余的值赋值给s,在最后⼀ 次循环中s+m 的值为14,  i 的值为12, 14%12的值为2,  因此答案 为A。

9.运⾏下⾯代码  显示的结果是  (       

import turtle as t
t.right(120)
t.forward(100)
t.right(120)
t.forward(100)
t.right(120)
t.done()

 

 

 

 

解析:  程序执⾏3次向右旋转120度,两次向前进100步,绘制出两条线,因此答案是B 

10.运⾏以下程序  变量'i'的值为  (  

A. 93

B. 95

C. 70

D. 75

解析:  变量a在循环体内每次增加7,  在a⼩于等于100的情况下,  变量i每次增加5,  在第15次循 环时变量a⼤于100,  变量i 的值为5*15=75,  因此答案是D。

 二 多选项题

11.下⾯哪些表达式的结果为数字类型  (       

A.3 / 1

B.3 // 1

C.3 % 1

D.'1' * 3

解析:  前三项计算下来都是数字类型 。  最后⼀ 个会输出字符串类型。

12.元组是⼀ 种常⻅的数据类型  下⾯哪些选项是元组的特点?    (     

A 、有序

B 、可以遍历

C 可变

 D 、不可变 

解析:  元组基本概念

13.下⾯代码的输出结果不会是  (

d = {"苹果":'红色',"梨":'黄色 ',"可乐":'黑色'}
print(d["梨"],d.get('可乐 ','红色'))

A 、  ⿊⾊ ⻩⾊

B ⻩⾊ ⿊⾊

C 、  ⿊⾊ 红⾊

D 、红⾊ ⻩⾊

解析:  这个是字典的应⽤,  print函数中第⼀ 个项是要输出‘梨’这个键对应的值,  及‘⻩⾊’。

第⼆个项⽤的是字典的get  ()  是返回指定键的值,  也就是‘可乐’的值‘⿊⾊’。所以正确的是B, ACD错误。

14.要想绘制出如下图形  代码① ②处应填写为    

 

A 36

B 、  10

C 、t.sunflower()

D 、sunflower()

解析:  第⼀ 个空会影响图形尖刺个数,  显然图形中尖刺个数远多于10个,  所以第⼀ 个空选A 。第 ⼆个空是引⽤函数,  sunflower  ()  函数是我们⾃⼰定义的函数,  不是turtle库中的函数,  所以选 D。

15、运⾏以下程序  不会出现哪些结果  (  

A.3 、  7

B.7 、  7

C.1 、8

D.2 、3

解析:

4到8⾏的程序逻辑是:  对两个列表中的元素分别进⾏穷举相加,  第六⾏的判断如果为真,  则运 ⾏pass,  其实和判断为假是⼀ 样的效果,  所以最终运⾏的i会遍历lst1,  j最终的值就是lst2中的 最后⼀ 项7,  所以CD是不会出现的。

 

三、填空题

16、转换为⼆进制是__________

解析:  28转化为⼆进制位11100

 17、以下程序的运⾏结果为____9______

解析:  sum  ()  函数的基本⽤法,  上述代码是对range(5)进⾏求和之后再减去1。

所以是0+1+2+3+4-1=9

 

18执⾏下⾯的程序  最终“i”的值为_____8_____。

解析:  对i的值的计算,  顺序执⾏之后答案为8 

19、 使⽤random库中的__________函数可以打乱列表

解析:  random库中的shuffle函数可以打乱列表。 

20、下列代码的输出是__________

解析

主要考察正则表达式,  依据正则表达式的规则,  答案为Cats。

 

21、补充代码①  完成以下程序运⾏效果 创建3x3矩阵  矩阵元素均为0-10之间的随机整数

__________

注意答案之间不加空格,  使⽤英⽂输⼊法。

 

解析:

randint(a,b,(x,y)),'a

 

22、以下程序输出到⽂件text.txt⾥的结果是__________

(注意  使⽤英⽂输⼊法  答案之间不加空格 。)

解析:

 

23、 下⾯代码的运⾏结果是__________

 

 解析:

这是⼀ 个利⽤递归来计算阶乘的程序。

第6⾏给函数factorial赋值为5,  注意看第四⾏的代码运⾏之后其实是构成了⼀ 个5*4*3*2*1的 算式,  所以最终的结果即为这个算式的解——120 

24、以下是选择排序的代码,  要想实现如下所示程序运⾏效果  应在代码①处补充__________

注意  答案之间不留空格,  使⽤英⽂输⼊法。

解析:

这个是冒泡排序算法,   由运⾏结果看是要进⾏从⼩到⼤进⾏排序,  注意看第五⾏是对⽐i项是否 ⼤于j项,  如果⼤于,  需要将i项与j项交换位置。

所以第6⾏是执⾏交换这个动作,  所以对应填⼊的应该是nums[j],nums[i] 。

 

25、阅读下⾯的程序  写出程序运⾏输出的结果________

注:  仅填写数字,  勿填写汉字或其他字符

解析:

n=7,前三项均不符合;

计算出t3=2 。    (‘//’为整除)

7-2*3 == 1 成⽴ 。

所以计算 t3=2-1=1;t2=(7-1*3)//2 =2

所以最后返回   (3**1)  *  (2**2)  =12.    ('**'是阶乘的意思)

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/874624.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存