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中的类学习笔记
Sep 23 Python
Python中AND、OR的一个使用小技巧
Feb 18 Python
使用PyV8在Python爬虫中执行js代码
Feb 16 Python
python2.7读取文件夹下所有文件名称及内容的方法
Feb 24 Python
浅析Python装饰器以及装饰器模式
May 28 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
Feb 26 Python
Python3内置模块之json编解码方法小结【推荐】
Dec 09 Python
Flask框架学习笔记之表单基础介绍与表单提交方式
Aug 12 Python
pycharm创建scrapy项目教程及遇到的坑解析
Aug 15 Python
Pycharm 2019 破解激活方法图文详解
Oct 11 Python
PYTHON绘制雷达图代码实例
Oct 15 Python
python3跳出一个循环的实例操作
Aug 18 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
PHP中冒号、endif、endwhile、endfor使用介绍
2010/04/28 PHP
解析PHP中常见的mongodb查询操作
2013/06/20 PHP
Zend Framework教程之Zend_Db_Table表关联实例详解
2016/03/23 PHP
详解EventDispatcher事件分发组件
2016/12/25 PHP
Paypal实现循环扣款(订阅)功能
2017/03/23 PHP
使用PHPWord生成word文档的方法详解
2019/06/06 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
2019/10/14 PHP
window.onbeforeunload方法在IE下无法正常工作的解决办法
2010/01/23 Javascript
Javascript 按位左移运算符使用介绍(
2014/02/04 Javascript
jquery 新建的元素事件绑定问题解决方案
2014/06/12 Javascript
JavaScript极简入门教程(三):数组
2014/10/25 Javascript
JavaScript学习总结之JS、AJAX应用
2016/01/29 Javascript
使用jQuery制作基础的Web图片轮播效果
2016/04/22 Javascript
理解AngularJs篇:30分钟快速掌握AngularJs
2016/12/23 Javascript
javascript中this用法实例详解
2017/04/06 Javascript
JavaScript实现汉字转换为拼音及缩写的方法示例
2019/03/28 Javascript
如何使用JavaScript实现栈与队列
2019/06/24 Javascript
[12:36]《DOTA2》国服注册与激活指南全攻略
2013/04/28 DOTA
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
Python创建xml文件示例
2017/03/22 Python
Python 判断是否为质数或素数的实例
2017/10/30 Python
python 实现数组list 添加、修改、删除的方法
2018/04/04 Python
详解django自定义中间件处理
2018/11/21 Python
Python3实现获取图片文字里中文的方法分析
2018/12/13 Python
对Python中class和instance以及self的用法详解
2019/06/26 Python
基于jupyter代码无法在pycharm中运行的解决方法
2020/04/21 Python
详解css3中dispaly的Grid布局与Flex布局
2020/09/11 HTML / CSS
中国包裹转运寄送国际服务:Famiboat
2019/07/24 全球购物
英国最大的割草机购买网站:Just Lawnmowers
2019/11/02 全球购物
几个Shell Script面试题
2012/08/31 面试题
连锁经营管理专业大学生求职信
2013/10/30 职场文书
会计系中文个人求职信
2013/12/24 职场文书
法人授权委托书
2014/04/03 职场文书
2014年文学毕业生自我鉴定
2014/04/23 职场文书
大学生个人简历自我评价
2015/03/11 职场文书
2015年初中教师个人工作总结
2015/07/21 职场文书