您好,登錄后才能下訂單哦!
好程序員Python教程分享常見的Python面試題,程序員面試難免會需要進行筆試,筆試是考驗程序員基礎功底的重要環節,根據很多小伙伴的面試反饋,今天總結分享了一些常見的Python面試題,想要看Python面試是不是可以順利通過,這些常見的Python面試題你應該看看。
1、大數據的文件讀取
①利用生成器generator
②迭代器進行迭代遍歷:forlineinfile
2、迭代器和生成器的區別
1)迭代器是一個更抽象的概念,任何對象,如果它的類有next方法和iter方法返回自己本身。對于string、list、dict、tuple等這類容器對象,使用for循環遍歷是很方便的。在后臺for語句對容器對象調用iter()函數,iter()是python的內置函數。iter()會返回一個定義了next()方法的迭代器對象,它在容器中逐個訪問容器內元素,next()也是python的內置函數。在沒有后續元素時,next()會拋出一個StopIteration異常。
2)生成器(Generator)是創建迭代器的簡單而強大的工具。它們寫起來就像是正規的函數,只是在需要返回數據的時候使用yield語句。每次next()被調用時,生成器會返回它脫離的位置(它記憶語句最后一次執行的位置和所有的數據值)。
區別:生成器能做到迭代器能做的所有事,而且因為自動創建了__iter__()和next()方法,生成器顯得特別簡潔,而且生成器也是高效的,使用生成器表達式取代列表解析可以同時節省內存。除了創建和保存程序狀態的自動方法,當發生器終結時,還會自動拋出StopIteration異常。
?
3、裝飾器的作用和功能:
引入日志、函數執行時間統計、執行函數前預備處理、執行函數后的清理功能、權限校驗等場景、緩存。
?
4、如何提高python的運行效率
使用生成器;關鍵代碼使用外部功能包(Cython,pylnlne,pypy,pyrex);針對循環的優化--盡量避免在循環中訪問變量的屬性。
?
5、Python中的yield用法
yield簡單說來就是一個生成器,這樣函數它記住上次返回時在函數體中的位置。對生成器第二次(或n次)調用跳轉至該函次)調用跳轉至該函數。
?
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。