#677. Q_003
Q_003
选择题
- 执行以下代码后,
print(a is b)和print(a == b)的输出分别是?
a = [1, 2, 3]
b = a[:]
{{ select(1) }}
True,TrueFalse,TrueTrue,FalseFalse,False
- 下列关于 Python 内存管理的说法,正确的是?( ) {{ select(2) }}
- 所有整数对象都共享同一内存地址
- 小整数(如 -5 到 256)会被缓存复用
- 字符串拼接总是创建新对象,无法优化
- 列表切片操作
[:]返回原列表的引用
- 表达式
[] == False和bool([]) == False的结果分别是?( ) {{ select(3) }}
True,TrueFalse,TrueTrue,FalseFalse,False
- 以下程序的输出是?
def f(x, lst=[]):
lst.append(x)
return lst
print(f(1))
print(f(2))
{{ select(4) }}
[1]和[2][1]和[1, 2][1, 2]和[1, 2]- 报错:默认参数不能是可变对象
- 已知
d = {'a': 1, 'b': 2},执行d.update([('c', 3), ('a', 4)])后,d的值是?( ) {{ select(5) }}
{'a': 1, 'b': 2, 'c': 3}{'a': 4, 'b': 2, 'c': 3}{'a': 1, 'b': 2, 'c': 3, 'a': 4}- 报错:update 不支持列表传参
- 关于集合运算,
{1, 2, 3} ^ {2, 3, 4}的结果是?( ) {{ select(6) }}
{1, 4}{2, 3}{1, 2, 3, 4}set()
- 执行以下代码后,
x的值是?
x = 0
for i in range(10):
if i % 2 == 0:
continue
elif i == 7:
break
x += i
{{ select(7) }}
- 9
- 16
- 25
- 0
- 下列哪段代码能正确实现“交换字典的键和值”(假设值唯一且可哈希)?( ) {{ select(8) }}
{v: k for k, v in d.items()}{k: v for v, k in d.items()}dict(zip(d.values(), d.keys()))- A 和 C 都正确
- 使用
enumerate(['a', 'b', 'c'], start=1)遍历时,第一次迭代得到的值是?( ) {{ select(9) }}
(0, 'a')(1, 'a')('a', 1)1, 'a'
- 关于
Turtle模块,以下说法错误的是?( ) {{ select(10) }}
turtle.setheading(90)使画笔朝上(北)turtle.stamp()可在当前位置留下一个印记turtle.reset()会清除屏幕并重置所有状态turtle.circle(r)以当前位置为圆心画圆
- 要高效判断一个大列表中是否存在重复元素,最佳方法是?( ) {{ select(11) }}
- 用双重循环逐个比较
- 将列表转为集合,比较长度
- 使用
list.count()统计每个元素 - 排序后检查相邻元素是否相等
- 以下程序用于计算阶乘,横线处应填入?
def fact(n):
if n <= 1:
return 1
return ______
{{ select(12) }}
n * fact(n)fact(n - 1)n * fact(n - 1)(n - 1) * fact(n)
- 程序出现 “UnboundLocalError: local variable 'x' referenced before assignment”,最可能的原因是?( ) {{ select(13) }}
- 在函数内先使用
x,后赋值,且全局存在x - 变量名拼写错误
- 在类中未使用
self.x - 循环变量未初始化
- 要解决“找出 1000 以内所有完数(等于其真因子之和)”的问题,核心算法思想是?( ) {{ select(14) }}
- 解析法
- 枚举 + 因子求和
- 动态规划
- 贪心算法
- 以下关于
range对象的说法,错误的是?( ) {{ select(15) }}
range(5)占用内存远小于[0,1,2,3,4]range对象支持索引和切片len(range(10))返回 10range对象是可变的
判断题
0.1 + 0.2 == 0.3在 Python 中返回True。( ) {{ select(16) }}
- 对
- 错
- 元组
(1, [2, 3])是不可变的,因此不能修改其中的列表元素。( ) {{ select(17) }}
- 对
- 错
dict.fromkeys(['a', 'b'], [])创建的两个键共享同一个空列表对象。( ) {{ select(18) }}
- 对
- 错
sorted([3, 1, 2], reverse=True)返回[3, 2, 1],且原列表不变。( ) {{ select(19) }}
- 对
- 错
- 在 Python 中,
True + True的结果是2。( ) {{ select(20) }}
- 对
- 错
list(filter(None, [0, 1, '', 'hello', [], [1]]))的结果是[1, 'hello', [1]]。( ) {{ select(21) }}
- 对
- 错
for循环中的变量在循环结束后仍存在于作用域中。( ) {{ select(22) }}
- 对
- 错
chr(ord('A') + 32)的结果是'a'。( ) {{ select(23) }}
- 对
- 错
- 使用
deepcopy复制嵌套列表后,修改副本不会影响原列表。( ) {{ select(24) }}
- 对
- 错
with open("file.txt") as f:若文件不存在,会自动创建该文件。( ) {{ select(25) }}
- 对
- 错