日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

据说这篇总结覆盖了一般Python开发面试中可能会问到的大部分问题

發布時間:2023/12/4 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 据说这篇总结覆盖了一般Python开发面试中可能会问到的大部分问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文標題:一名python web后端開發工程師的面試總結


先介紹下我的情況

通信背景,工作一年多不到兩年。之前一直在做C++的MFC軟件界面開發工作。公司為某不景氣的國企研究所。(喏,我的工作經驗很水:1是方向不對;2是行業有偏差)。然后目前是在尋找python后端開發這一塊的工作,使用的框架為django;之前一直通過CSDN以及其他幾家技術博客/論壇吸收大家的經驗,在感激之余,也想輸出點什么,造福大家,因此就有了這篇水文,希望大家能夠多多吸取我的經驗教訓,早日找到一份自己滿意的工作!

面試的幾家:北京的兩家創業公司,規模均在40-50人之間;果殼(止步于電話面,拉鉤投的);知乎(止步于電話面,論壇發帖后的內推);愛奇藝(拉鉤上投的);杭州的網易(同學內推)。


面試這一輪下來,最大的感受就一個:平時一定要堅持每天都碼點代碼。就算再爛的項目,也要堅持上傳github……真的,只要你能堅持一周有5天以上都能持續上傳Git,半年下來,面試官絕對對你刮目相看。

其他感受:不同的公司著重點都不一樣,不過真的就如這篇博文(http://blog.csdn.net/yueguanghaidao/article/details/49638261)的博主所說,木桶原理,哪塊都不能少。我就是因為平時只關注做自己的小博客系統,而沒做其他的部分,導致愛奇藝倒在了手寫代碼上面……哎,憂傷……平時多刷刷leetcode,看看劍指offer/面試金典,都是套路啊~~

面試這幾家公司所遇到的面試/筆試題,目前還能記住的如下。雖然可能絕大部分都是基礎,但希望大家不要只是看看就過去了,最好還是假裝你被問到這個問題,你來把答案說出來或寫出來:(不按公司分了)

python語法以及其他基礎部分

可變與不可變類型;?
淺拷貝與深拷貝的實現方式、區別;deepcopy如果你來設計,如何實現;?
__new__() 與 __init__()的區別;?
你知道幾種設計模式;?
編碼和解碼你了解過么;?
列表推導list comprehension和生成器的優劣;?
什么是裝飾器;如果想在函數之后進行裝飾,應該怎么做;?
手寫個使用裝飾器實現的單例模式;?
使用裝飾器的單例和使用其他方法的單例,在后續使用中,有何區別;?
手寫:正則郵箱地址;?
介紹下垃圾回收:引用計數/分代回收/孤立引用環;?
多進程與多線程的區別;CPU密集型適合用什么;?
進程通信的方式有幾種;?
介紹下協程,為何比線程還快;?
range和xrange的區別(他妹的我學的py3…);?
由于我有C/C++背景,因此要求用C來手寫:將IP地址字符串(比如“172.0.0.1”)轉為32位二進制數的函數。

算法排序部分


手寫快排;堆排;幾種常用排序的算法復雜度是多少;快排平均復雜度多少,最壞情況如何優化;?
手寫:已知一個長度n的無序列表,元素均是數字,要求把所有間隔為d的組合找出來,你寫的解法算法復雜度多少;?
手寫:一個列表A=[A1,A2,…,An],要求把列表中所有的組合情況打印出來;?
手寫:用一行python寫出1+2+3+…+10**8 ;?
手寫python:用遞歸的方式判斷字符串是否為回文;?
單向鏈表長度未知,如何判斷其中是否有環;?
單向鏈表如何使用快速排序算法進行排序;?
手寫:一個長度n的無序數字元素列表,如何求中位數,如何盡快的估算中位數,你的算法復雜度是多少;?
如何遍歷一個內部未知的文件夾(兩種樹的優先遍歷方式)

網絡基礎部分


TCP/IP分別在模型的哪一層;?
socket長連接是什么意思;?
select和epoll你了解么,區別在哪;?
TCP UDP區別;三次握手四次揮手講一下;?
TIME_WAIT過多是因為什么;?
http一次連接的全過程:你來說下從用戶發起request——到用戶接收到response;?
http連接方式。get和post的區別,你還了解其他的方式么;?
restful你知道么;?
狀態碼你知道多少,比如200/403/404/504等等;


數據庫部分


MySQL鎖有幾種;死鎖是怎么產生的;?
為何,以及如何分區、分表;?
MySQL的char varchar text的區別;?
了解join么,有幾種,有何區別,A LEFT JOIN B,查詢的結果中,B沒有的那部分是如何顯示的(NULL);?
索引類型有幾種,BTree索引和hash索引的區別(我沒答上來這倆在磁盤結構上的區別);?
手寫:如何對查詢命令進行優化;?
NoSQL了解么,和關系數據庫的區別;redis有幾種常用存儲類型;

Linux部分


講一下你常用的Linux/git命令和作用;?
查看當前進程是用什么命令,除了文件相關的操作外,你平時還有什么操作命令;?
(因為我本人Linux本身就很水,只會基本的操作,所以這部分面試官也基本沒怎么問。。反正問了就大眼瞪小眼唄)


django項目部分


都是讓簡單的介紹下你在公司的項目,不管是不是后端相關的,主要是要體現出你干了什么;?
你在項目中遇到最難的部分是什么,你是怎么解決的;?
你看過django的admin源碼么;看過flask的源碼么;你如何理解開源;?
MVC / MTV;?
緩存怎么用;?
中間件是干嘛的;?
CSRF是什么,django是如何避免的;XSS呢;?
如果你來設計login,簡單的說一下思路;?
session和cookie的聯系與區別;session為什么說是安全的;?
uWSGI和Nginx的作用;?
(我發現基本不問django實現細節相關的東西。。或者問也問的很少,哎,之前準備的方向完全錯了)


洋洋灑灑寫了一個小時,發現還是有很多細節問題都已經忘了。。哎,自己的筆記做的還是不行。不過這些問題如果你能都答上來,起碼我覺得你應該可以去試試面試初級web后端了,good luck!




后記:發現一個整理的特別棒的github倉庫,比我寫的強多了。共享給大家~:https://github.com/taizilongxu/interview_python

轉自:程序人生

總結

以上是生活随笔為你收集整理的据说这篇总结覆盖了一般Python开发面试中可能会问到的大部分问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。