博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Pthon入门学习】利用slice实现str的strip函数,类似C#中的string.trim
阅读量:4875 次
发布时间:2019-06-11

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

1.先了解下切片的知识点

切片是str, list,tuple中常用的取部分元素的操作。

例如:

1 L =['北京', '上海', '天津', '深圳', '石家庄']  2 print(L[0:2]) # 从第0的索引位置开始到第2个索引位置,但是不包括第2个索引位置。类似数学中的集合半闭半开[)  3 print(L[:-1]) # 支持倒序>len(L) - 1的索引位置等于-1的索引;即len(L) - i的索引位置等于-i的索引

2.实现trim函数

方法一:采用一个循环同时从str的开始和结束的索引位置向中间遍历,遇到非空的结束。记录下顺序遍历和倒序遍历的位置,然后使用slice返回部分字符串

1 def trim(s):  2     s_len = len(s)  3     low_move = True  4     low = 0  5     high = s_len  6     high_move = True  7     for i in range(s_len):  8         if s[i] != ' ' and s[s_len - i - 1] != ' ':  9             break 10  11         if low_move and s[i] == ' ': 12             low = i + 1 13         else: 14             low_move = False 15  16         if high_move and s[s_len - i - 1] == ' ': 17             high = s_len - i - 1 18         else: 19             high_move = False 20     return s[low:high]
View Code

方法二:采用一个循环同时从str的开始和结束的索引位置向中间遍历,遇到空字符,直接利用slice改变该字符串,去掉空字符。

1 def trim(s):  2     s_len = len(s)  3     for i in range(s_len):  4         if s[:1] == ' ':  5             s = s[1:]  6         if s[-1:] == ' ':  7             s = s[:-1]  8     return s
View Code

3. 验证函数是否正确

1 # 测试:  2 if trim('hello  ') != 'hello':  3     print('1测试失败!')  4 elif trim('  hello') != 'hello':  5     print('2测试失败!')  6 elif trim('  hello  ') != 'hello':  7     print('3测试失败!')  8 elif trim('  hello  world  ') != 'hello  world':  9     print('4测试失败!') 10 elif trim('') != '': 11     print('5测试失败!') 12 elif trim('    ') != '': 13     print('6测试失败!') 14 else: 15     print('7测试成功!')
View Code

转载于:https://www.cnblogs.com/yongqiangyue/p/8805948.html

你可能感兴趣的文章
shell、cmd、dos和脚本语言
查看>>
javafx实现手机版QQ登录界面
查看>>
XML到底是什么
查看>>
35 个 Java 代码性能优化总结
查看>>
mac平台安装配置TomCat
查看>>
组播原理
查看>>
tomcat安装
查看>>
关于互斥锁和条件变量
查看>>
HDU1846(巴什博奕)
查看>>
改变checkbox和radio的默认样式
查看>>
微机原理之 80x86微处理器
查看>>
如何创建基本的高级队列之二:创建接收方代码
查看>>
堆表的在执行Select语句时的默认排序问题——发现问题
查看>>
oracle监听理解 命名理解
查看>>
Python3基础1
查看>>
C#高性能二进制序列化
查看>>
JS常用函数
查看>>
Python学习教程:Python3除法之真除法、截断除法和下取整对比
查看>>
CSS杂集(标准流&多行垂直居中)
查看>>
Javascript中数组与字典(即map)的使用
查看>>