python使用切片實現去除字串首尾空白字元

2021-09-17 07:59:35 字數 1241 閱讀 7610

測試項為:

if trim('hello  ') != 'hello':

print('left+測試失敗!')

elif trim(' hello') != 'hello':

print('right+測試失敗!')

elif trim(' hello ') != 'hello':

print('both+測試失敗!')

elif trim(' hello world ') != 'hello world':

print('middle+測試失敗!')

elif trim('') != '':

print('blank+測試失敗!')

elif trim(' ') != '':

print('longblank+測試失敗!')

else:

print('測試成功!')

初學階段,記錄我看到這個題目自己的實現思路:

(1)獲取第乙個非空白字元和最後乙個非空白字元的索引;

(2)用切片方式擷取(1)中兩個索引之間的值.

我的實現**是:

def trim(s):

index=

for pos,letter in enumerate(s):

if letter !=" ":

if index==:

s="" #如果索引列表為空,表示字串中無非空白字元,返回""

else:

s=s[index[0]:index[-1]+1] #擷取中間字串(因為切片右邊區間為開區間,+1)

return s

可以測試通過,但是後來在網上看到其他朋友寫的實現,簡潔易懂,記錄下給自己漲經驗:

def trims(s):

if not isinstance(s,str):

raise ('not suportting')

if s==' ':

return ' '

else:

while s[:1] ==' ': #使用while迴圈每次去掉首部的乙個空字元

s=s[1:]

while s[-1:] == ' ': #使用while迴圈每次去掉尾部的乙個空字元

s=s[:-1]

return s

Python實現去除APP彈窗

檢視機型 devicename os.popen adb shell getprop ro.product.model read 檢視版本 platformversion os.popen adb shell getprop ro.build.version.release read def ini...

python實現不使用額外空間去除重複元素

題目之前做過,但是使用就是python自帶的方法,借助了額外的空間,這裡給出來幾種方法,下面是具體的實現 usr bin env python encoding utf 8 author 沂水寒城 功能 不使用額外空間去除重複元素 def remove repeat 1 num list pytho...

12python切片實現trim()

利用切片操作,實現乙個trim 函式,去除字串首尾的空格,注意不要呼叫str的strip 方法 用於移除字串頭尾指定的字元 預設為空格或換行符 或字串行。test 000python000world000 print test.strip 0 執行結果 python000worlddef trim ...