- 经典算法题。(待整理)
基础知识
任何一门技术面试,基础知识一定是重中之重。对于python程序员面试来说,我觉得下面三块内容比较重要,考察的频率也非常高。
语言基础
可变对象、不可变对象、装饰器、迭代器和生成器、线程和进程、魔术方法、动态解释性、元类等。
web基础
http请求、状态码、网络安全、django处理请求的顺序、cookie和session
数据库
mysql的事务、索引、锁、性能调优,nosql数据库中redis考察的比较多。
Python基础视频
1-1 Linux基础
1-2 python基础
1-3 面向对象
1-4 项目飞机大战
这些都是在学习python基础过程中参考和学习的视频,如果你有需要我都可以分享出来!
一般对应届生来说,基础知识很重要。对于社招来说,项目经验是非常重要的一块内容。
我建议可以从下面几个角度去准备自己的项目:
项目介绍
推荐STAR模型。
S——situation,项目是什么背景下产生的 T——task,你的任务是什么 A——action,你怎么做的 R——result,结果如何
项目中的难点、闪光点
我相信每一个真实做过自己的项目的人,肯定会对自己的项目有所思考。总结一下自己在这个项目里最难的地方,以及最精彩的地方,也可以使用上面的STAR模型。
项目框架
有的面试官会要求你在白纸上把项目的框架图或者设计图画出来,这个也可以提前准备下,做到条理清晰,临场画的话很容易乱。
Python中高级视频(就业项目)
这些都是在准备面试过程中参考学习python项目实战demo和源码,如果你有需要我都可以分享出来!
面试是一场艰难的战役,我发现在那种紧张对弈的交锋氛围中,我从来没有体会过所谓超常发挥的感觉,准备了100分,能把60分发挥出来就已经非常不错了。所以,建议每一个面试者都要提前把一些必问的东西(个人介绍、项目经验等等)提前准备好,并且模拟表达一下,以防临场紧张而忘词。
面试真题
因为自己大厂和创业公司都会去面,给我的感觉是,大厂的考察深度会更深一点,比如问你怎么用python定位一些内存满、CPU满的问题,怎么做mysql性能优化等等。而小公司问的更多是一些基础问题,以及看你之前经验的一个匹配度。
我这里从我亲身的面试经历,精选出了30道面试常考题,涉及到了python面试的方方面面,大家可以自行测试。
python基础
-
python是什么样的语言,和其他语言的区别。
-
python中的线程和进程,以及使用场景,你知道协程吗?
-
GIL是什么,为什么会有GIL,去掉会怎样,有了GIL为什么还要给程序加锁?
-
迭代器、可迭代对象、生成器分别是什么?生成器的作用和使用场景?
-
python中的装饰器是什么?如何实现?使用场景?
-
python中的元类是什么?
-
python中的可变对象和不可变对象之间的区别。
-
python的魔术方法你知道哪些,new,init,call的区别是什么
-
django的中间件是什么
-
celery的原理,如何配置worker的权重
项目
-
如何定位内存过高或CPU过高的问题
-
画一下你的项目的结构
-
项目中你遇到的最大的困难是什么,是如何解决的?
-
项目中你最有成就感的地方是什么?
-
你业余是怎么学习编程的?看哪些书?有自己做过什么项目?
web
-
HTTP/GET/POST/PUT/PATCH之间的区别
-
状态码的含义以及出现场景,301,302,404,500,502,504等
-
cookie和session的区别和联系
-
从url请求到返回,中间经历了什么
-
HTTP和HTTPS的区别,HTTPS如何进行加密的
数据库
-
mysql的索引是什么,如何建立索引,B+树的结构
-
mysql中的事务是什么,隔离等级是什么
-
如何优化sql语句
-
mysql的性能优化等
操作系统
-
堆和栈的区别
-
什么是io多路复用
-
nginx的配置
算法
-
找到整数列表的最大k个数,时间复杂度
-
输入一维数组array和n,找出和值为n的任意两个元素
-
常见的排序算法,时间复杂度分析
-
生成一个旋转矩阵
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!