前言
网上有大量的基础面试题目,但是通过面试python后台开发,掌握的一些基础面试题,觉得有必要整理出来,以便日后查阅;
正文
一、面试基础题目;
1、可迭代对象、迭代器与生成器的区别?
(1)迭代器是一个可以记住遍历的位置的对象,基本方法有iter()和next(),迭代器可以记住遍历位置的对象;
(2)生成器是一种特殊的迭代器,返回值不通过return而是通过yield;
(3)使用iter内置函数可以获取迭代器的对象。如果对象实现了能返回迭代器的__iter__方法,那么对象就是可迭代的;
2、什么是生成器?
3、多进程与线程的知识点?
4、进城与线程的区别?
5、python里面使用线程的缺点?
6、GIL锁什么时候会释放?
7、python垃圾怎么回收的?
8、python上下文管理器?
9、存储引擎innodb的特性?
10、mysql事物有哪些特性?
11、数据库索引的功能是什么?
12、innodb索引数据结构是什么样的?
13、mysql建索引需要注意哪些事项?
14、数据库怎么优化慢查询?
15、表的拆分有哪些纬度?
16、什么情况下会用上读写分离?
17、mysql的binlog主要有哪些信息?
18、kafka和rabbitmq的区别?
19、数据结构算法,常用排序算法时间复杂度、空间复杂度?
20、二叉树镜像反转?
21、hadoop怎么进行容错的?
22、http协议常见请求方法有哪些?状态码有哪些?
23、https和http的区别,https怎么进行加密的?
24、tcp与udp协议的区别?
25、tcp协议如何进行流量控制?
26、三次握手四次挥手?
27、git如何管理分支?
28、redis知识点?