中国电子学会Python3级等级考试202403客观题解析2

11、单选题

关于语句 f=open(r"c:\计算.txt",'w'),下列描述不正确的是?( )

A f 是变量

B 'w'以写方式打开文件

C 如果文件“计算.txt”不存在,不会报错

D 如果文件“计算.txt”内原来有内容,将不会被覆盖

答案:D

当open()函数的第二个参数是w时,表示在写入内容时覆盖文件之前的内容。

知识扩展:参数“r”、“w”、“a”、“r+”、“w+”的含义。

参考资料:《Python中文件的输入》

12、小明用插入排序算法,编写了如下代码,对列表 arr 中的数值进行排序,请问,代码中红色①处,应填

写什么代码?( )

A arr[i]

B arr[j-1]

C arr[i+1]

D arr[j]

答案:D

当key(arr[i])比arr[j]小的时候,则交换key(arr[i])和arr[j]的位置。

参考资料:《Python中排序算法之插入排序》

13、列表 a 中全是整数,小明想将其中所有奇数都增加 1,偶数不变,于是编写了如下代码。请问红色①处,代码应该是?( )

A a[x] /2

B a[x] ^ 2

C a[x] *2

D a[x] % 2

答案:D

a[x]%2!=0,则表示a[x]是基数。

参考资料《Python中类型转换函数3》

14、

小明用冒泡排序算法编写了一段程序,请问程序中红色标记的①处,应该填写什么代码?( )

A j-1

B j+1

C n-1

D n+1

答案:B

当a[j]>a[j+1]时,这两个数字交换位置,达到冒泡效果。

参考资料:《Python中排序算法之冒泡排序》

15、divmod(-10,3)返回值是?( )

A (-3,1)

B (-4,2)

C (-4,-2)

D (-3,-1)

答案:B

divmod()函数得到的余数符号,与除数相同。题目中除数是正数,因此得到的余数也应该是正数,再通过计算得到正确答案(-4,1)。

知识扩展:其它数学运算函数abs()、max()、min()、pow()等函数的用法。

参考资料:《Python中数学运算函数》

16、下列代码的结果是?( )

A {'h', 'p', 'y'}

B ['a']

C ['v', 'y', 'h', 'p', 'j', 'a']

D ['y', 'h', 'p']

答案:D

代码第3行中的减号表示两个集合的差集,第4行代码将集合转换为列表。

知识扩展:集合的交集、差集和并集操作。

参考资料:《Python中类型转换函数2》

17、给定列表 nums = [1, 2, 3, 4, 5, 6],以下哪个选项返回 True?( )

A not all(nums)

B any(nums)

C not (all(nums) and any(nums))

D not (all(nums) or any(nums))

答案:B

all(nums)和any(nums)的值都是True,所以A、C和D都是False。

扩展知识:其它序列操作函数filter()、map()和enumerate()函数的用法。

参考资料:《Python中序列操作函数》

  • 14
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值