python面试题

独到科技Python笔试

建议时长 30-50min

0.简写3~4条PEP8.0规范

PEP8.0(Python Enhancement Proposal 8.0)协议[规范]

1.Python的内置 [数据结构] 有哪些?各有什么特点?

可以从存储的 [数据类型] 和操作上考虑

2.Python中list与array.array有什么区别?

可以从存储数据的方式和类型考虑

3.什么是迭代器?什么是生成器?

可以从两者的关系和如何避免无限迭代上考虑

4.按照顺序写出下列输出

可以从Python变量赋值方式角度考虑

1
2
3
4
5
6
7
8
temp_1 = [["_"] * 3] *3
temp_2 = [["_"] * 3 for _ in range(3)]

temp_1[0][0] = "X"
temp_2[0][0] = "O"

print(temp_1)
print(temp_2)

可以从三者获取值时所调用的(magic method)上考虑

PS: 如果AttributeError则写Error

1
2
3
4
5
6
7
8
9
list_1 = ["hello", "World", "!"]
list_2 = [1, "", 3]

temp_var = dict(zip(list_1, list_2))

print(temp_var[list_1[0]])
print(temp_var.hello)
print(temp_var.get("World"))
print(temp_var.get("hello, world"))

可以从python函数如何接受可变类型参数上考虑

1
2
3
4
5
6
7
def func(var_1,seq=[]):
seq.append(var_1)
return seq

func(1)
func(1)
print(func(1))