Python面試解析-03

一缩擂、什么是Pillow庫(kù)鼠冕?

Pillow是PIL(Python圖形庫(kù))的一個(gè)友好分支。對(duì)于用戶比PIL更加友好胯盯,對(duì)于任何在圖形領(lǐng)域工作的人是必備的庫(kù)懈费。

二、如何使用Pillow實(shí)現(xiàn)圖像縮放博脑?

在Pillow中圖片的縮放有以下兩種方式憎乙。

(1)使用resize函數(shù)。

(2)使用thumbnail函數(shù)叉趣。

resize函數(shù)可以縮小泞边,也可以放大。

thumbnail只能縮小疗杉,不能放大阵谚,所以如果只打開(kāi)一次圖片,要存出多個(gè)尺寸的話烟具,要么從大到小開(kāi)始縮放梢什。

或者使用resize從大到小開(kāi)始縮放,因?yàn)橛胷esize放大的話朝聋,可以想象那個(gè)馬賽克嗡午。

當(dāng)然,也可以設(shè)置縮放圖片的質(zhì)量(PIL.Image.NEAREST:最低質(zhì)量玖翅;PIL.Image.BILINEAR:雙線性翼馆;PIL.Image.BICUBIC:三次樣條插值;Image.ANTIALIAS:最高質(zhì)量)金度。

三应媚、什么是正則表達(dá)式?談?wù)勀銓?duì)正則表達(dá)式的理解猜极。

正則表達(dá)式(Regular Expression, RE)又稱為正規(guī)表示法或常規(guī)表示法中姜,常常用來(lái)檢索、替換那些符合某個(gè)模式的文本跟伏。它首先設(shè)定好了一些特殊的字及字符組合丢胚,通過(guò)組合的“規(guī)則字符串”來(lái)對(duì)表達(dá)式進(jìn)行過(guò)濾,從而獲取或匹配想要的特定內(nèi)容受扳。它具有靈活携龟、邏輯性和功能性強(qiáng),能迅速地通過(guò)表達(dá)式從字符串中找到所需信息的優(yōu)點(diǎn)勘高,但對(duì)于剛接觸的人來(lái)說(shuō)峡蟋,比較晦澀難懂。

四华望、如何用Python來(lái)進(jìn)行查詢和替換一個(gè)文本字符串蕊蝗?Python中re模塊函數(shù)里面search()和match()函數(shù)有何區(qū)別?

可以使用sub()方法來(lái)進(jìn)行查詢和替換赖舟,sub方法的格式為:

replacement是被替換成的文本蓬戚;

string是需要被替換的文本;

count是一個(gè)可選參數(shù)宾抓,指最大被替換的數(shù)量子漩。

match()函數(shù)只檢測(cè)RE是不是在string的開(kāi)始位置匹配,search()會(huì)掃描整個(gè)string查找匹配石洗,也就是說(shuō)match()只有在0位置匹配成功的話才有返回痛单,如果不是開(kāi)始位置匹配成功的話,match()就返回None劲腿。

五旭绒、Python中如何實(shí)現(xiàn)多線程柒傻?

線程是輕量級(jí)的進(jìn)程欲主,多線程允許一次執(zhí)行多個(gè)線程。眾所周知祭椰,Python是一種多線程語(yǔ)言花椭,它有一個(gè)多線程包忽匈。

GIL(全局解釋器鎖)確保一次執(zhí)行單個(gè)線程。一個(gè)線程保存GIL并在將其傳遞給下一個(gè)線程之前執(zhí)行一些操作矿辽,這就產(chǎn)生了并行執(zhí)行的錯(cuò)覺(jué)丹允。但實(shí)際上郭厌,只是線程輪流在CPU上。當(dāng)然雕蔽,所有傳遞都會(huì)增加執(zhí)行的開(kāi)銷折柠。

六、創(chuàng)建兩個(gè)線程批狐,其中一個(gè)輸出1~52扇售,另外一個(gè)輸出A~Z。輸出格式要求:

12A 34B 56C 78D嚣艇。

七承冰、介紹一下except的用法和作用。

Python的except用來(lái)捕獲所有異常食零,因?yàn)镻ython里面的每次錯(cuò)誤都會(huì)拋出一個(gè)異常困乒,所以每個(gè)程序的錯(cuò)誤都被當(dāng)作一個(gè)運(yùn)行時(shí)錯(cuò)誤。

八贰谣、Python如何捕獲異常顶燕?

Python中捕獲異常可以有三種方式冈爹。

(1)使用try和except語(yǔ)句來(lái)捕獲異常涌攻,具體代碼如下。

捕獲到的IOError錯(cuò)誤的詳細(xì)原因會(huì)被放置在對(duì)象e中频伤,然后運(yùn)行該P(yáng)ython異常處理的except代碼塊捕獲所有的異常恳谎。

(2)用raise語(yǔ)句手動(dòng)引發(fā)一個(gè)異常,具體代碼如下憋肖。

(3)采用sys模塊回溯最后的異常因痛,具體代碼如下。

九岸更、Python到底是什么樣的語(yǔ)言鸵膏?你可以比較其他技術(shù)或者語(yǔ)言來(lái)回答你的問(wèn)題。

Python是解釋型語(yǔ)言怎炊。這意味著不像C和其他語(yǔ)言谭企,Python運(yùn)行前不需要編譯。其他解釋型語(yǔ)言包括PHP和Ruby评肆。Python是動(dòng)態(tài)類型的债查,這意味著你不需要在聲明變量時(shí)指定類型。Python是面向?qū)ο笳Z(yǔ)言瓜挽,所以允許定義類并且可以繼承和組合盹廷。Python沒(méi)有訪問(wèn)標(biāo)識(shí),如在C++中的public久橙、private俄占,在Python中管怠,函數(shù)是一等公民。這就意味著它們可以被賦值缸榄,從其他函數(shù)返回值渤弛,并且傳遞函數(shù)對(duì)象。類不是一等公民碰凶。寫(xiě)Python代碼很快,但是跑起來(lái)會(huì)比編譯型語(yǔ)言慢鹿驼。Python允許使用C擴(kuò)展程序欲低,所以瓶頸可以得到處理。Numpy庫(kù)就是一個(gè)很好的例子畜晰,因?yàn)楹芏啻a不是Python直接寫(xiě)的砾莱,所以運(yùn)行很快。Python使用場(chǎng)景很多:Web應(yīng)用開(kāi)發(fā)凄鼻、自動(dòng)化腊瑟、科學(xué)建模、大數(shù)據(jù)應(yīng)用等块蚌。它也經(jīng)常被看作“膠水”語(yǔ)言闰非,使得不同語(yǔ)言間可以銜接上。Python能夠簡(jiǎn)化工作峭范,使得程序員能夠關(guān)心如何重寫(xiě)代碼而不是詳細(xì)看一遍底層實(shí)現(xiàn)财松。

十、單元測(cè)試是什么纱控?單元測(cè)試有什么好處辆毡?

單元測(cè)試是開(kāi)發(fā)者編寫(xiě)的一小段代碼,用于檢驗(yàn)被測(cè)代碼的一個(gè)很小的甜害、很明確的功能是否正確舶掖。通常而言,一個(gè)單元測(cè)試是用于判斷某個(gè)特定條件(或場(chǎng)景)下某個(gè)特定函數(shù)的行為尔店。單元測(cè)試是用來(lái)對(duì)一個(gè)模塊眨攘、一個(gè)函數(shù)或者一個(gè)類來(lái)進(jìn)行正確性檢驗(yàn)的測(cè)試工作。

單元測(cè)試從長(zhǎng)期來(lái)看嚣州,可以提高代碼質(zhì)量期犬,減少維護(hù)成本,降低重構(gòu)難度避诽。通過(guò)單元測(cè)試我們能快速熟悉代碼龟虎,不需要深入地閱讀代碼,便能知道這段代碼做什么工作沙庐,有哪些特殊情況需要考慮鲤妥,包含哪些業(yè)務(wù)佳吞。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市棉安,隨后出現(xiàn)的幾起案子底扳,更是在濱河造成了極大的恐慌,老刑警劉巖贡耽,帶你破解...
    沈念sama閱讀 221,576評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件衷模,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡蒲赂,警方通過(guò)查閱死者的電腦和手機(jī)阱冶,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)滥嘴,“玉大人木蹬,你說(shuō)我怎么就攤上這事∪糁澹” “怎么了镊叁?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,017評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)走触。 經(jīng)常有香客問(wèn)我晦譬,道長(zhǎng),這世上最難降的妖魔是什么互广? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,626評(píng)論 1 296
  • 正文 為了忘掉前任蛔添,我火速辦了婚禮,結(jié)果婚禮上兜辞,老公的妹妹穿的比我還像新娘迎瞧。我一直安慰自己,他們只是感情好逸吵,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,625評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布凶硅。 她就那樣靜靜地躺著,像睡著了一般扫皱。 火紅的嫁衣襯著肌膚如雪足绅。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,255評(píng)論 1 308
  • 那天韩脑,我揣著相機(jī)與錄音氢妈,去河邊找鬼。 笑死段多,一個(gè)胖子當(dāng)著我的面吹牛首量,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,825評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼加缘,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼鸭叙!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起拣宏,我...
    開(kāi)封第一講書(shū)人閱讀 39,729評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤沈贝,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后勋乾,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體宋下,經(jīng)...
    沈念sama閱讀 46,271評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,363評(píng)論 3 340
  • 正文 我和宋清朗相戀三年辑莫,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了学歧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,498評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡摆昧,死狀恐怖撩满,靈堂內(nèi)的尸體忽然破棺而出蜒程,到底是詐尸還是另有隱情绅你,我是刑警寧澤,帶...
    沈念sama閱讀 36,183評(píng)論 5 350
  • 正文 年R本政府宣布昭躺,位于F島的核電站忌锯,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏领炫。R本人自食惡果不足惜偶垮,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,867評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望帝洪。 院中可真熱鬧似舵,春花似錦、人聲如沸葱峡。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,338評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)砰奕。三九已至蛛芥,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間军援,已是汗流浹背仅淑。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,458評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留胸哥,地道東北人涯竟。 一個(gè)月前我還...
    沈念sama閱讀 48,906評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親昆禽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蝗蛙,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,507評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容