python3的教程中,利用切片操作,實現strip()方法怎么做?(知道做法了,但問題刪不了了0.0)
題目:利用切片操作,實現一個trim()函數,去除字符串首尾的空格,注意不要調用str的strip()方法。
有‘ ?lck’, ' ? lck ?', 'lck ? ?' ?這3種情況,而且幾個空格也無法判斷,怎么切片?
題目:利用切片操作,實現一個trim()函數,去除字符串首尾的空格,注意不要調用str的strip()方法。
有‘ ?lck’, ' ? lck ?', 'lck ? ?' ?這3種情況,而且幾個空格也無法判斷,怎么切片?
2017-11-29
舉報
2019-07-16
def trim(s):
? ? start, end = 0, 0
????for i in range(len(s)):
????????if s[i] == ' ':
????????????continue
????????else:
????????????start = i
????????????break
????for j in range(-1, -1-len(s), -1):
????????if s[j] == ' ':
????????????continue
????????else:
????????????end = j
????????????break
????????if start == end:
????????????new_s = ''
????????else:
????????????new_s = s[start : len(s) + end + 1]
????return new_s
已驗證代碼,高效,包括全空格字符串和空字符串都可以識別
2018-08-09
2018-02-03
也是笨辦法 能用
2018-01-28
2018-01-28
2018-01-26
def trim(s):
? ? if s=='':
? ? ? ? return s
? ? elif s[0]!=' 'and s[-1]!=' ':
? ? ? ? return s
? ? elif s[0]==' ' and s[-1]==' ':
? ? ? ? s=s[1:-1]
? ? ? ? if s=='':
? ? ? ? ? ? return s
? ? ? ? else:
? ? ? ? ? ? return trim(s)
? ? elif s[0] == ' ' and s[-1] != ' ':
? ? ? ? s=s[1:]
? ? ? ? return trim(s)
? ? elif s[0] != ' ' and s[-1] == ' ':
? ? ? ? s=s[:-1]
? ? ? ? return trim(s)
2018-01-21
def myTrim(n):
length=len(n)
for i in range(length):
if n[i] == ' ':
continue
else:
n = n[i:length]
break
length = len(n) -1
while n[length] == '':
if length == i:
break
length -= 1
return n[:length]
print(myTrim(' I am is Harry '))
2018-01-18
strip()不應該去除中間的空格,所以分別從頭到尾,從尾到頭掃描兩遍,遇到字符就跳出循環。為了避免全是空格的情況,設置一個下標值是否相同的判斷條件。
2017-11-29