博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 切片实现trim函数(去除首尾空格)
阅读量:4215 次
发布时间:2019-05-26

本文共 999 字,大约阅读时间需要 3 分钟。

转自:
http://blog.csdn.net/daniel960601
需求:  
Python 切片:利用切片操作,实现一个trim()函数,去除字符串首尾的空格,不调用str的strip()方法。

在很多编程语言中,针对字符串提供了很多各种截取函数(例如,substring),其实目的就是对字符串切片。Python没有针对字符串的截取函数,只需要切片一个操作就可以完成各种截取操作,非常方便。

要去除首尾的空格,只需要从头到尾、从尾到头各扫描一次,记录两端需要截取的位置,去除两端空格即可。

需要注意的是全是空格的情况。

def trim(s):    length = len(s)    if length > 0:        for i in range(length):            if s[i] != ' ':                break;        j = length-1;        while s[j] == ' ' and j >= i:            j -= 1        s = s[i:j+1]    return s
更加美观的是使用递归实现:
def trim(s):    if s[:1] != ' ' and s[-1:] != ' ':        return s    elif s[:1] == ' ':        return trim(s[1:])    else:        return trim(s[:-1])
附测试数据
if trim('hello  ') != 'hello':    print('测试失败!1')elif trim('  hello') != 'hello':    print('测试失败!2')elif trim('  hello  ') != 'hello':    print('测试失败!3')elif trim('  hello  world  ') != 'hello  world':    print('测试失败!4')elif trim('') != '':    print('测试失败!5')elif trim('    ') != '':    print('测试失败!6')else:    print('测试成功!')
你可能感兴趣的文章
Python学习笔记——栈和队列
查看>>
Python学习笔记——排序与搜索
查看>>
Python学习笔记——爬虫之BeautifulSoup4数据提取
查看>>
Python学习笔记——爬虫的思路总结
查看>>
Python学习笔记——爬虫之动态HTML处理和机器图像识别
查看>>
Python学习笔记——爬虫之执行JavaScript语句与训练Tesseract
查看>>
Python学习笔记——爬虫之Scrapy框架
查看>>
Python学习笔记——爬虫之Scrapy项目实战
查看>>
Python学习笔记——爬虫之通过Fiddler进行手机抓包
查看>>
Python学习笔记——爬虫之Scrapy-Redis分布式组件
查看>>
Python学习笔记——爬虫之Scrapy-Redis实战
查看>>
Python学习笔记——大数据之Spark简介与环境搭建
查看>>
Python学习笔记——大数据之SPARK核心
查看>>
Python学习笔记——大数据之Pyspark与notebook使用matplotlib
查看>>
Python学习笔记——云计算
查看>>
Python学习笔记——运维和Shell
查看>>
Python学习笔记——nginx
查看>>
Python学习笔记——自动化部署
查看>>
Python学习笔记——多任务-协程
查看>>
Python学习笔记——WSGI、mini-web框架
查看>>