掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流
關(guān)于python刪除字符串是面試python測(cè)試開(kāi)發(fā)工程師的一個(gè)經(jīng)典問(wèn)題。問(wèn)題很簡(jiǎn)單,但是一下子就能測(cè)試出來(lái)被面試者是否能夠熟練的進(jìn)行python相關(guān)編碼工作!

創(chuàng)新互聯(lián)專(zhuān)注為客戶(hù)提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、做網(wǎng)站、新樂(lè)網(wǎng)絡(luò)推廣、微信小程序定制開(kāi)發(fā)、新樂(lè)網(wǎng)絡(luò)營(yíng)銷(xiāo)、新樂(lè)企業(yè)策劃、新樂(lè)品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪(fǎng)、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供新樂(lè)建站搭建服務(wù),24小時(shí)服務(wù)熱線(xiàn):028-86922220,官方網(wǎng)址:www.cdcxhl.com
對(duì)于有些臨時(shí)抱佛腳的同學(xué)來(lái)講,一看刪除,很自然就說(shuō)用remove 、del相關(guān)方法,聽(tīng)到這里,就知道面試者根本不知道這個(gè)答案啦!因?yàn)閷?duì)于這個(gè)問(wèn)題,remove 、del根本無(wú)效!有的同學(xué)回答:使用strip函數(shù),很顯然這些同學(xué)對(duì)字符串a(chǎn)pi有些了解,但是對(duì)于面試官來(lái)說(shuō),我們能夠判斷出,這些同學(xué)編碼經(jīng)驗(yàn)有限!我們就先來(lái)了解一下strip函數(shù)。
Python 的 strip() 方法用于移除字符串頭尾指定的字符(默認(rèn)為空格或換行符)或字符序列。實(shí)際工作中,只移除字符串開(kāi)頭和結(jié)尾的部分字符應(yīng)用場(chǎng)景極其有限。
例如代碼
str ="abc,ddd,ffff,ee"
print(str.strip( 'ee' ))
print(str.strip( 'abc' ))
print(str.strip( 'ddd' ))分別輸出:
abc,ddd,ffff,
,ddd,ffff,ee
abc,ddd,ffff,ee
可以看到strip對(duì)于刪除尾部的ee 和頭部的abc是能夠符合我們預(yù)期需求的,但是當(dāng)刪除字符串中間的ddd,就會(huì)失??!
另外還有l(wèi)strip()、rstrip()函數(shù)和strip()函數(shù)的用法相似,只不過(guò)lstrip()是去掉左邊的(頭部),rstrip()是去掉右邊的(尾部)
那么我們應(yīng)該怎樣解決刪除中間字符串這個(gè)問(wèn)題呢?答案是用replace()函數(shù)!看到這里可能有的同學(xué)會(huì)說(shuō)replace是替換的意思啊,怎么會(huì)用來(lái)進(jìn)行刪除操作呢?沒(méi)錯(cuò),replace是進(jìn)行替換操作的,但是如果我們把要?jiǎng)h除的字符串替換為空值,不就巧妙地解決了這個(gè)問(wèn)題嘛!
print(str.replace( 'ddd','' ))輸出:abc,,ffff,ee
完全符合預(yù)期!
隨著大家對(duì)python編碼的不斷深入,大家會(huì)遇到更復(fù)雜的需求:通過(guò)正則表達(dá)式來(lái)刪除字符串,那么該如何處理呢?跟據(jù)我多年的面試經(jīng)驗(yàn)來(lái)看,如果在面試過(guò)程中能夠回答出這個(gè)問(wèn)題的同學(xué),那么python編碼是過(guò)關(guān)的,應(yīng)對(duì)python接口自動(dòng)化測(cè)試或者UI自動(dòng)化測(cè)試是能夠勝任的。在這里我也不啰嗦了,直接給大家答案,使用re.sub 函數(shù)即可,我們還是以字符串str ="abc,ddd,ffff,ee" 為例,用正則刪除字符串=",ddd,ffff," (這個(gè)正則應(yīng)用的例子比較簡(jiǎn)單,在這里我只是給大家來(lái)舉例如何使用正則的方法來(lái)刪除指定的字符串),代碼如下:
import re
str ="abc,ddd,ffff,ee"
print(re.sub(r',.*,', '', str))輸出:abcee
符合預(yù)期!
通過(guò)strip()函數(shù)、replace()函數(shù)和re.sub ()函數(shù)大概率就可以評(píng)定出面試測(cè)試開(kāi)發(fā)人員的基本python編碼能力,而且屢試不爽!

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流