這里對(duì)Python常見(jiàn)面試題做一個(gè)總結(jié),也僅僅是個(gè)人的經(jīng)驗(yàn),不足之處,還請(qǐng)伙伴們補(bǔ)充!
1. python是如何進(jìn)行類型轉(zhuǎn)換的?
python提供了將變量或值從一種類型轉(zhuǎn)換成另一種類型的內(nèi)置函數(shù)。比如int函數(shù)能夠?qū)⒎蠑?shù)學(xué)格式數(shù)字型字符串轉(zhuǎn)換成整數(shù)。否則,返回錯(cuò)誤信息。
2. python是如何進(jìn)行內(nèi)存管理的?
python引用了一個(gè)內(nèi)存池(memory pool)機(jī)制,即Pymalloc機(jī)制(malloc:n.分配內(nèi)存),用于管理對(duì)小塊內(nèi)存的申請(qǐng)和釋放。
3. dict 的 items() 方法與 iteritems() 方法有什么不同?
items方法將所有的字典以列表方式返回,其中項(xiàng)在返回時(shí)沒(méi)有特殊的順序;
iteritems方法有相似的作用,但是返回一個(gè)迭代器對(duì)象
4. 什么是lambda函數(shù)?它有什么好處?
編程中提到的 lambda 表達(dá)式,通常是在需要一個(gè)函數(shù),但是又不想費(fèi)神去命名一個(gè)函數(shù)的場(chǎng)合下使用,也就是指匿名函數(shù)。
python允許你定義一種單行的小函數(shù)。定義lambda函數(shù)的形式如下:labmda 參數(shù):表達(dá)式lambda函數(shù)默認(rèn)返回表達(dá)式的值。你也可以將其賦值給一個(gè)變量。lambda函數(shù)可以接受任意個(gè)參數(shù),包括可選參數(shù),但是表達(dá)式只有一個(gè)。
5. 說(shuō)明os,sys模塊不同,并列舉常用的模塊方法?
官方解釋:os:This module provides a portable way of usingoperating system dependent functionality.翻譯:提供一種方便的使用操作系統(tǒng)函數(shù)的方法。sys:This module provides access to some variablesused or maintained by the interpreter and to functions that interact stronglywith the interpreter.翻譯:提供訪問(wèn)由解釋器使用或維護(hù)的變量和在與解釋器交互使用到的函數(shù)。
os 常用方法
sys 常用方法
6. python里面如何拷貝一個(gè)對(duì)象?deepcopy 和 copy的區(qū)別?
copy 僅拷貝對(duì)象本身,而不拷貝對(duì)象中引用的其它對(duì)象。
deepcopy 除拷貝對(duì)象本身,而且拷貝對(duì)象中引用的其它對(duì)象。
7. os.path和sys.path的區(qū)別?
os.path是module,包含了各種處理長(zhǎng)文件名(路徑名)的函數(shù)。
sys.path是由目錄名構(gòu)成的列表,python 從中查找擴(kuò)展模塊( python 源模塊, 編譯模塊,或者二進(jìn)制擴(kuò)展). 啟動(dòng) python 時(shí),這個(gè)列表從根據(jù)內(nèi)建規(guī)則,PYTHONPATH 環(huán)境變量的內(nèi)容, 以及注冊(cè)表( Windows 系統(tǒng))等進(jìn)行初始化.
8. re模塊中match和search方法的不同?
match() 函數(shù)只檢查 RE 是否在字符串開(kāi)始處匹配,而search() 則是掃描整個(gè)字符串。
9. 解釋生成器(generator)與函數(shù)的不同,并實(shí)現(xiàn)和使用簡(jiǎn)單generator?
生成器和函數(shù)的主要區(qū)別在于函數(shù) return avalue,生成器 yield a value同時(shí)標(biāo)記或記憶point of the yield 以便于在下次調(diào)用時(shí)從標(biāo)記點(diǎn)恢復(fù)執(zhí)行。yield 使函數(shù)轉(zhuǎn)換成生成器,而生成器反過(guò)來(lái)又返回迭代器。
先跟大家總結(jié)這9個(gè)Python常見(jiàn)面試題,更多的Python學(xué)習(xí)教程也會(huì)繼續(xù)給大家更新!
聯(lián)系客服