2022提前批 - 深信服 - Python开发工程师 - 08.21 - 一面复盘

2022提前批 - 深信服 - Python开发工程师 - 08.21 - 一面复盘

1、自我介绍
2、你觉得Python语言有什么特性呢?
3、解释性语言和编译性语言的区别
4、有了解Python虚拟机吗?(回答不了解,只知道Python解释器),那你说一下解释器吧
5、解释器主要的功能是什么?
6、GIL锁有了解吗,解释一下
7、协程和线程之间的区别
8、进程切换和线程切换的区别
9、Python函数声明中有三种类型的参数,说一下区别(听题没听清楚,以为问的三种函数类型,面试官指正了问的是三种参数类型,反应过来后就重答了一下)
10、说一下你知道的Django组件
11、Python中的迭代器是怎么用的
12、你是怎么理解线程安全的
13、有哪些进程间通信方式
14、为了保证你刚才说的同步,有哪些方法呢(答了互斥锁和信号量,面试官问还有别的吗,答可能还有信号)
15、列表去重
16、自己实现set类,应该如何去实现
17、有写过单元测试吗(回答没写过),那你平时是怎么调试的(回答的打断点debug),有在Linux上调试过吗(无)
18、数据结构这一块你比较熟悉哪个,或者算法(回答都还可以),那么树的使用场景有哪些(答了一些场景),比如红黑树一般会在哪里使用呢(不知道)
19、在100个数中找第K大的数,如何实现(答的快排分治,用K和基准值比较决定往左分支或右分支进行单支递归),还有其他的思路吗(思考后说了大根堆),讲一下大根堆是什么(讲了大根堆的实现原理)
20、Python还有哪些是你比较熟悉的,是我刚才没有问到的?(答了列表元组和字典的底层实现原理),那你说一下字典的底层原理吧(讲了3.6前后的字典原理区别)
21、Linux内核熟悉吗(不熟悉),Linux常规使用(不太用)
22、网络这一块熟悉吗,我在浏览器上输入URL,它的请求过程是怎样的
23、IP层分片重组是用来做什么的
24、TCP拥塞控制是怎么做的
25、文件系统中的软链接知道是什么吗(不知道)
26、现在有一个任务,最多只有10个线程在执行,如何实现?(答了线程池),线程池具体怎么实现?那如果池子满了,其他任务该如何处理?还有别的思路吗?(要求提示一下,面试官提示了用队列去实现,答了双端队列)
27、Python中使用锁是不是比较少?(是的)
28、如果我两个主机网络不通了,该如何排查?
29、算法题:力扣21 - 合并两个有序链表,手撕
30、反问:问了面试整体表现和评价;问了部门和业务,面试官说自己不是Python部门的,是写GO的,于是介绍了公司整体部门分布。

你可能感兴趣的:(Python,笔记,Python学习)