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 面向对象 成员的访问约束
Dec 23 Python
使用Python构建Hopfield网络的教程
Apr 14 Python
Python编写登陆接口的方法
Jul 10 Python
python解析html提取数据,并生成word文档实例解析
Jan 22 Python
Python OpenCV获取视频的方法
Feb 28 Python
python sys.argv[]用法实例详解
May 25 Python
Python3.5内置模块之time与datetime模块用法实例分析
Apr 27 Python
python 基于TCP协议的套接字编程详解
Jun 29 Python
python+adb+monkey实现Rom稳定性测试详解
Apr 23 Python
详解Django配置JWT认证方式
May 09 Python
python zip()函数的使用示例
Sep 23 Python
基于Python实现粒子滤波效果
Dec 01 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
Linux下CoreSeek及PHP扩展模块的安装
2012/09/23 PHP
分享8个最佳的代码片段在线测试网站
2013/06/29 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
2015/01/07 PHP
PHP一致性hash分布式算法封装类定义与用法示例
2018/08/04 PHP
JavaScript实现简单的时钟实例代码
2013/11/23 Javascript
JS可以控制样式的名称写法一览
2014/01/16 Javascript
Nodejs极简入门教程(一):模块机制
2014/10/25 NodeJs
NodeJs基本语法和类型
2015/02/13 NodeJs
CascadeView级联组件实现思路详解(分离思想和单链表)
2016/04/12 Javascript
Vuex2.0+Vue2.0构建备忘录应用实践
2016/11/30 Javascript
js中new一个对象的过程
2017/02/20 Javascript
jQuery上传多张图片带进度条样式(DEMO)
2017/03/02 Javascript
EasyUI Datebox 日期验证之开始日期小于结束时间
2017/05/19 Javascript
jquery插件开发之选项卡制作详解
2017/08/30 jQuery
jQuery进阶实践之利用最优雅的方式如何写ajax请求
2017/12/20 jQuery
[01:01:43]EG vs VP 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
python3.3实现乘法表示例
2014/02/07 Python
高性能web服务器框架Tornado简单实现restful接口及开发实例
2014/07/16 Python
Numpy array数据的增、删、改、查实例
2018/06/04 Python
python 实现turtle画图并导出图片格式的文件
2019/12/07 Python
利用pytorch实现对CIFAR-10数据集的分类
2020/01/14 Python
pycharm下配置pyqt5的教程(anaconda虚拟环境下+tensorflow)
2020/03/25 Python
基于SpringBoot构造器注入循环依赖及解决方式
2020/04/26 Python
pytorch 限制GPU使用效率详解(计算效率)
2020/06/27 Python
如何用Python徒手写线性回归
2021/01/25 Python
css3 position fixed固定居中问题解决方案
2014/08/19 HTML / CSS
一家专门经营包包的英国网站:MyBag
2019/09/08 全球购物
文科毕业生自荐书范文
2014/04/17 职场文书
骨干教师培训方案
2014/05/06 职场文书
小学毕业典礼演讲稿
2014/09/09 职场文书
道路交通事故赔偿协议书
2014/10/24 职场文书
校园广播站开场白
2015/06/01 职场文书
开学典礼校长致辞
2015/07/29 职场文书
反四风问题学习心得体会
2016/01/22 职场文书
聊一聊python常用的编程模块
2021/05/14 Python