封装系统字符串内置函数,实现类似功能
2019-06-01 10:12
465 查看
版权声明:本文为博主原创文章,如需转载请声明原文链接。 https://blog.csdn.net/z_ipython/article/details/90726333
1、封装类似lower()的函数
def myLower(src): src1 = '' for i in src: if 'A' <= i <= 'Z': src1 += chr(ord(i) + 32) else: src1 += i return src1 #print(myLower('AcdEjlG'))
2、封装类似upper()的函数
def myUpper(src): src1 = '' for i in src: if 'a' <= i <= 'z': src1 += chr(ord(i) - 32) else: src1 += i return src1 #print(myUpper('aCdEf'))
3、封装类似find()的函数
第一种思路: def myFind1(src,sub): for i in range(len(src)-len(sub)+1): new_src = src[i:i+len(sub)] #print(new_src) if new_src == sub: return i else: return -1 print(myFind1('abcde123abe','123a')) 第二种思路: def myFind(src,sub): if len(sub) > len(src): return -1 for i in range(len(src)): if src[i] == sub[0]: index = i for j in range(len(sub)): if src[index] != sub[j]: break index += 1 else: return i else: return -1
4、封装类似rfind()的函数
第一种思路: def myRfind(src,sub): #从右往左进行遍历 for i in range(len(src)-1,-1,-1): #先找第一个字符,如果一致,在进行对应切片比较 if sub[0] == src[i]: #如果切片出来的结果与子串一致,返回所在的索引值 if sub == src[i:i+len(sub)]: return i #如果没找到,返回-1 else: return -1 # index = myRfind('abc123','c1') # print(index) 第二种思路: def myRfind(src,sub): if len(sub) > len(src): return -1 for i in range(-1,-len(src)-1,-1): if src[i] == sub[0]: index = i for j in range(len(sub)): if src[index] != sub[j]: break index += 1 else: return len(src) + i else: return -1 #print(myRfind('abcdegabeda','ab'))
5、封装功能类似isdigit()的函数
def myIsdigit(src): for ch in src: if not '0' <= ch <= '9': return False else: return True print(myIsdigit('123')) print(myIsdigit('123a'))
6、封装功能类似partition()的函数
def myPartition(src,sub): if sub in src: #获取子串在目标字符串的索引值 index = myRfind(src,sub) #切片操作划分三个元素: 1.str[0:index] 2.sub 3.[index+len(sub):] return (src[0:index],sub,src[index+len(sub):]) else: return (src,'','') # print(myPartition('abcdef','g')) print(myPartition('abcdef','cd'))
相关文章推荐
- Webdriver实现对菜单栏的灵活切换功能,附上代码,类似的菜单栏切换可以自己封装
- 借鉴LifeAsia的table-driven 在前台POS系统 实现类似功能
- Webdriver控制翻页控件,并实现向前向后翻页功能,附上代码,仅供参考,其他类似日期控件的功能可以自己封装
- 权限认证系统, 实现类似单点登录的功能
- c++ 连接两个字符串,实现类似strcat 功能
- [WMI实例]实现文件系统管理功能封装。提供共享文件和文件系统访问权限控制能力
- windows客户端实现类似windows系统右键新建菜单功能
- 在linux系统下,简单实现类似windows的_splitpath函数的功能
- ThinkPHP3.2.3 验证码 上传图片 制作缩略图 2.为自己的项目封装功能类 利用Page工具类实现分页效果 后台管理员登录系统实现
- 如何调用系统照相机实现类似腾讯微博那个拍照上传的功能
- 请写一个函数,实现类似的strcpy的字符串复制功能
- 使用注解和spring的JdbcTemplate进行封装实现类似Hibernate的功能
- SqlServe中分割字符串实现 类似split()功能
- 加强2注解。泛型。类加载器及其委托机制。代理的概念与作用原理,AOP概念。实现AOP功能的封装与配置。类似Spring。
- c++ 连接两个字符串实现代码 实现类似strcat功能(转)
- istringstream字符串流,实现类似字符串截取的功能,字符串流中的put,str()将流转换成为字符串string
- 快速打造阿里云网站-我们要实现一个类似的平台需要实现哪些系统与功能(三)...
- Vue + Element UI 实现权限管理系统 前端篇(七):功能组件封装
- 黑马程序员--09.动态与代理AOP--06【动态代理实例化的过程升级--目标对象+系统功能的参数化】【实现类似Spring的可配置AOP框架】
- 在C++中实现类似C#的字符串格式功能