新聞中心
關(guān)于python刪除字符串是面試python測試開發(fā)工程師的一個經(jīng)典問題。問題很簡單,但是一下子就能測試出來被面試者是否能夠熟練的進(jìn)行python相關(guān)編碼工作!

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


咨詢
建站咨詢
