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


Posted in Python onApril 22, 2019

下面通过实例代码给大家分享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切片操作去除字符串首尾的空格 ,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
Python的Django框架中模板碎片缓存简介
Jul 24 Python
Python编程使用tkinter模块实现计算器软件完整代码示例
Nov 29 Python
Python使用Flask-SQLAlchemy连接数据库操作示例
Aug 31 Python
python实现朴素贝叶斯算法
Nov 19 Python
Python读取YUV文件,并显示的方法
Dec 04 Python
对python:threading.Thread类的使用方法详解
Jan 31 Python
python获取当前文件路径以及父文件路径的方法
Jul 10 Python
python从list列表中选出一个数和其对应的坐标方法
Jul 20 Python
Windows平台Python编程必会模块之pywin32介绍
Oct 01 Python
python将数组n等分的实例
Dec 02 Python
python使用Thread的setDaemon启动后台线程教程
Apr 25 Python
python 利用jieba.analyse进行 关键词提取
Dec 17 Python
详解python中的hashlib模块的使用
Apr 22 #Python
Python 中包/模块的 `import` 操作代码
Apr 22 #Python
python定时检测无响应进程并重启的实例代码
Apr 22 #Python
django query模块
Apr 20 #Python
不到20行代码用Python做一个智能聊天机器人
Apr 19 #Python
详解Python3 基本数据类型
Apr 19 #Python
python面向对象法实现图书管理系统
Apr 19 #Python
You might like
一个程序下载的管理程序(一)
2006/10/09 PHP
PHP中MD5函数使用实例代码
2008/06/07 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
js jquery做的图片连续滚动代码
2008/01/06 Javascript
js实现在页面上弹出蒙板技巧简单实用
2013/04/16 Javascript
HTML页面滚动时获取离页面顶部的距离2种实现方法
2013/09/05 Javascript
javascript跨浏览器的属性判断方法
2014/03/16 Javascript
JavaScript字符串对象toUpperCase方法入门实例(用于把字母转换为大写)
2014/10/17 Javascript
原生js制作简单的数字键盘
2015/04/24 Javascript
jQuery实现的自动加载页面功能示例
2016/09/04 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
JS使用面向对象技术实现的tab选项卡效果示例
2017/02/28 Javascript
nodejs中向HTTP响应传送进程的输出
2017/03/19 NodeJs
Bootstrap超大屏幕的实现代码
2017/03/22 Javascript
浅析Angular2子模块以及异步加载
2017/04/24 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
基于react组件之间的参数传递(详解)
2017/09/05 Javascript
angular之ng-template模板加载
2017/11/09 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
使用Angular CLI生成路由的方法
2018/03/24 Javascript
详解js删除数组中的指定元素
2018/10/31 Javascript
页面内锚点定位及跳转方法总结(推荐)
2019/04/24 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
2020/09/08 Javascript
[05:06]TI4西雅图DOTA2前线报道 海涛密探LGD训练
2014/07/09 DOTA
[51:15]完美世界DOTA2联赛PWL S2 PXG vs Magma 第一场 11.21
2020/11/24 DOTA
如何使用pyinstaller打包32位的exe程序
2019/05/26 Python
python地震数据可视化详解
2019/06/18 Python
快速解决docker-py api版本不兼容的问题
2019/08/30 Python
英国户外服装品牌:Craghoppers
2019/04/25 全球购物
研究生自荐信
2013/10/09 职场文书
通信研究生自荐信
2014/02/01 职场文书
2014年元旦感言
2014/03/06 职场文书
事业单位人员的自我评价范文
2014/09/21 职场文书
离婚协议书样本
2015/01/26 职场文书
停电放假通知
2015/04/14 职场文书
Golang Web 框架Iris安装部署
2022/08/14 Python