
學(xué)成Python開發(fā)找工作面試時(shí),面試官經(jīng)常會問一些專業(yè)性的問題,那么今天就來給大家說一說Python編程面試常見問題有哪些。希望能給各位同學(xué)帶來幫助。
Python編程面試題目一:python下多線程的限制以及多進(jìn)程中傳遞參數(shù)的方式,以及區(qū)別?
(1)python下多線程的限制以及多進(jìn)程中傳遞參數(shù)的方式
python多線程有個(gè)全局解釋器鎖(global interpreter lock),這個(gè)鎖的意思是任一時(shí)間只能有一個(gè)線程使用解釋器,跟單cpu跑多個(gè)程序一個(gè)意思,大家都是輪著用的,這叫“并發(fā)”,不是“并行”。多進(jìn)程間共享數(shù)據(jù),可以使用 multiprocessing.Value 和 multiprocessing.Array。
(2)python多線程與多進(jìn)程的區(qū)別
在UNIX平臺上,當(dāng)某個(gè)進(jìn)程終結(jié)之后,該進(jìn)程需要被其父進(jìn)程調(diào)用wait,否則進(jìn)程成為僵尸進(jìn)程(Zombie)。所以,有必要對每個(gè)Process對象調(diào)用join()方法 (實(shí)際上等同于wait)。對于多線程來說,由于只有一個(gè)進(jìn)程,所以不存在此必要性。
多進(jìn)程應(yīng)該避免共享資源。在多線程中,我們可以比較容易地共享資源,比如使用全局變量或者傳遞參數(shù)。在多進(jìn)程情況下,由于每個(gè)進(jìn)程有自己獨(dú)立的內(nèi)存空間,以上方法并不合適。此時(shí)我們可以通過共享內(nèi)存和Manager的方法來共享資源。但這樣做提高了程序的復(fù)雜度,并因?yàn)橥降男枰档土顺绦虻男省?/span>
Python編程面試題目二:lambada函數(shù)是什么?
lambda 函數(shù)是一個(gè)可以接收任意多個(gè)參數(shù)(包括可選參數(shù))并且返回單個(gè)表達(dá)式值的函數(shù)。 lambda 函數(shù)不能包含命令,它們所包含的表達(dá)式不能超過一個(gè)。不要試圖向lambda 函數(shù)中塞入太多的東西;如果你需要更復(fù)雜的東西,應(yīng)該定義一個(gè)普通函數(shù),然后想讓它多長就多長。 注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://www.dedgn.cn/news-id-20678.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請關(guān)注python培訓(xùn)頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050