Python切片操作去除字符串首尾的空格

這篇文章主要介紹了Python切片操作去除字符串首尾的空格 的相關資料,需要的朋友可以參考下

下面通過實例代碼給大家分享Python切片操作去除字符串首尾的空格的方法,具體內容如下所示:

#利用切片操作,實現一個trim()函數,去除字符串首尾的空格,注意不要調用str的strip()方法
def trim(s):
  while s[0:1]==' ':
    s=s[1:]
  while s[(len(s)-1):len(s)]==' ':
    s=s[:-1]
  return s
s=input('請輸入一個字符串:')
print('去除首尾空格後',trim(s))

知識點:

•取一個list或tuple的部分元素,比如取list的前3個元素,對這種經常取指定索引範圍的操作,用循環十分繁瑣, Python提供了切片(Slice)操作符,能大大簡化這種操作。 在很多編程語言中,針對字符串提供了很多各種截取函數(例如,substring),其實目的就是對字符串切片。Python沒有針對字符串的截取函數,只需要切片一個操作就可以完成。

•L[0:3]表示取前3個元素, 從索引0開始取,直到索引3爲止,但不包括索引3。即索引0,1,2。 如果第一個索引是0,還可以省略:L[:3]。 也可以從索引1開始,取出2個元素出來:L[1:3]。 取倒數第一個元素 L[-1]。L[-2:]表示取從倒數第二個元素到最後一個元素。創建一個0-99的數列:L = list(range(100)),取前10個數:L[:10],取後10個數:L[-10:], 前10個數,每兩個取一個:L[:10:2]。  所有數,每5個取一個: L[::5]。 只寫[:]就可以原樣複製一個list。 字符串'xxx'也可以看成是一種list,每個元素就是一個字符。因此,字符串也可以用切片操作,只是操作結果仍是字符串。

PS:下面看下利用切片操作,實現一個trim()函數,去除字符串首尾的空格,注意不要調用str的strip()方法:

首先判斷字符串的長度是否爲0,如果是,直接返回字符串

第二,循環判斷字符串的首部是否有空格,如果有,去掉空格,再判斷字符串的長度是否爲0,如果是,直接返回字符串

第三,循環判斷字符串的尾部是否有空格,如果有,去掉空格,再判斷字符串的長度是否爲0,如果是,直接返回字符串

最後,返回字符串

# -*- coding: utf-8 -*-
def trim(s):
  if 0==len(s):
    return s
  while ' '==s[0]:
    s=s[1:]
    if 0==len(s):
      return s
  while ' '==s[-1]:
    s=s[:-1]
    if 0==len(s):
      return s 
  return s

    測試代碼:

  # 測試:
from trim import trim
if trim('hello ') != 'hello':
  print('測試失敗!')
elif trim(' hello') != 'hello':
  print('測試失敗!')
elif trim(' hello ') != 'hello':
  print('測試失敗!')
elif trim(' hello world ') != 'hello world':
  print('測試失敗!')
elif trim('') != '':
  print('測試失敗!')
elif trim('  ') != '':
  print('測試失敗!')
else:
  print('測試成功!')

總結

以上所述是小編給大家介紹的Python切片操作去除字符串首尾的空格 ,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回覆大家的!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章