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根据距离和时长计算配速示例
Feb 16 Python
跟老齐学Python之Python安装
Sep 12 Python
用Python编写一个基于终端的实现翻译的脚本
Apr 24 Python
详解python发送各类邮件的主要方法
Dec 22 Python
Python基础教程之利用期物处理并发
Mar 29 Python
python 匹配url中是否存在IP地址的方法
Jun 04 Python
解决Python print 输出文本显示 gbk 编码错误问题
Jul 13 Python
numpy.random.shuffle打乱顺序函数的实现
Sep 10 Python
Python新手学习装饰器
Jun 04 Python
Python内置函数property()如何使用
Sep 01 Python
pytorch 如何使用amp进行混合精度训练
May 24 Python
Python采集壁纸并实现炫轮播
Apr 30 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中static关键字原理的学习研究分析
2011/07/18 PHP
jquery 学习笔记 传智博客佟老师附详细注释
2020/09/12 Javascript
几个javascript操作word的参考代码
2009/10/26 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
2014/06/09 Javascript
在JavaScript中判断整型的N种方法示例介绍
2014/06/18 Javascript
jQuery实现感应鼠标动画效果自动伸长的输入框实例
2015/02/24 Javascript
JavaScript获取DOM元素的11种方法总结
2015/04/25 Javascript
jQuery实现首页图片淡入淡出效果的方法
2015/06/10 Javascript
javascript运算符语法全面概述
2016/07/14 Javascript
bootstrap日历插件datetimepicker使用方法
2016/12/14 Javascript
vue子组件使用自定义事件向父组件传递数据
2017/05/27 Javascript
jQuery+HTML5实现WebGL高性能烟花绽放动画效果【附demo源码下载】
2017/08/18 jQuery
JS实现区分中英文并统计字符个数的方法示例
2018/06/09 Javascript
vue实现组件之间传值功能示例
2018/07/13 Javascript
mpvue全局引入sass文件的方法步骤
2019/03/06 Javascript
js实现图片推拉门效果代码实例
2019/05/18 Javascript
vue实现多级菜单效果
2019/10/19 Javascript
Javascript var变量删除原理及实现
2020/08/26 Javascript
JS实现4位随机验证码
2020/10/19 Javascript
[50:24]VGJ.S vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python中处理字符串之endswith()方法的使用简介
2015/05/18 Python
Python全栈之列表数据类型详解
2019/10/01 Python
Python序列类型的打包和解包实例
2019/12/21 Python
设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
2014/12/30 面试题
《童年》教学反思
2014/02/18 职场文书
公司委托书格式范文
2014/04/04 职场文书
项目经理任命书范本
2014/06/05 职场文书
中学生教师节演讲稿
2014/09/03 职场文书
毕业生党员个人总结
2015/02/14 职场文书
2015年教师节演讲稿范文
2015/03/19 职场文书
2015年工会工作总结范文
2015/07/23 职场文书
运动会100米广播稿
2015/08/19 职场文书
2019年度行政文员工作计划范本!
2019/07/04 职场文书
如何让vue长列表快速加载
2021/03/29 Vue.js
golang特有程序结构入门教程
2021/06/02 Python
Python使用永中文档转换服务
2022/05/06 Python