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中将文件上传至七牛云存储的代码分享
Jun 03 Python
Python中functools模块函数解析
Mar 12 Python
Python只用40行代码编写的计算器实例
May 10 Python
解决pycharm界面不能显示中文的问题
May 23 Python
使用Python实现在Windows下安装Django
Oct 17 Python
Python 转换文本编码实现解析
Aug 27 Python
基于python实现学生信息管理系统
Nov 22 Python
Django 404、500页面全局配置知识点详解
Mar 10 Python
sklearn线性逻辑回归和非线性逻辑回归的实现
Jun 09 Python
15个Pythonic的代码示例(值得收藏)
Oct 29 Python
Python结合百度语音识别实现实时翻译软件的实现
Jan 18 Python
提取视频中的音频 Python只需要三行代码!
May 10 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
在“咖啡之国”感受咖啡文化
2021/03/03 咖啡文化
thinkphp框架实现删除和批量删除
2016/06/29 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
2018/09/04 PHP
php简单检测404页面的方法示例
2019/08/23 PHP
PHP实现简单的计算器
2020/08/28 PHP
jquery 插件实现图片延迟加载效果代码
2010/02/06 Javascript
编写可维护面向对象的JavaScript代码[翻译]
2011/02/12 Javascript
jquery 获取标签名(tagName)示例代码
2013/07/11 Javascript
javascript 动态创建表格
2015/01/08 Javascript
js中this的用法实例分析
2015/01/10 Javascript
js文本框走动跑马灯效果代码分享
2015/08/25 Javascript
js实现延时加载Flash的方法
2015/11/26 Javascript
日常收集整理的JavaScript常用函数方法
2015/12/10 Javascript
Angular自定义组件实现数据双向数据绑定的实例
2017/12/11 Javascript
微信小程序实现YDUI的ScrollNav组件
2018/02/02 Javascript
Angular异步变同步处理方法
2018/08/13 Javascript
解决vue-router在同一个路由下切换,取不到变化的路由参数问题
2018/09/01 Javascript
微信小程序常用赋值方法小结
2019/04/30 Javascript
javascript实现对话框功能警告(alert 消息对话框)确认(confirm 消息对话框)
2019/05/07 Javascript
[01:15]《辉夜杯》北京网鱼队巡礼
2015/10/26 DOTA
Python自动化测试工具Splinter简介和使用实例
2014/05/13 Python
跟老齐学Python之正规地说一句话
2014/09/28 Python
python中for语句简单遍历数据的方法
2015/05/07 Python
解决python matplotlib imshow无法显示的问题
2018/05/24 Python
pytorch中的自定义数据处理详解
2020/01/06 Python
利用Python制作动态排名图的实现代码
2020/04/09 Python
如何通过python实现IOU计算代码实例
2020/11/02 Python
Nike香港官网:Nike HK
2019/03/23 全球购物
介绍一下Linux文件的记录形式
2012/04/18 面试题
软件设计的目标是什么
2016/12/04 面试题
超市实习总结自我鉴定
2013/09/19 职场文书
石油大学毕业生自荐信
2014/01/28 职场文书
《陋室铭》教学反思
2014/02/26 职场文书
《伯牙绝弦》教学反思
2014/03/02 职场文书
关爱留守儿童主题班会
2015/08/13 职场文书
授权协议书范本(3篇)
2019/10/15 职场文书