python单词反转 |
您所在的位置:网站首页 › 团购界面设计 › python单词反转 |
主要实现快速字符转翻转倒置,将指定的前n个字符移动到字符串结尾,翻转中英文单词顺序 上python代码: class ReverseString: string=[] def __init__(self,string): self.string=list(string) def reset(self,string): self.string=list(string) def reverse(self,startidx=0,endidx=None): if endidx is None: endidx=len(self.string)-1 if startidx>=endidx: print('out:',startidx, endidx) return strlen=endidx-startidx+1 center=strlen//2 for i in range(center): tmp=self.string[endidx-i] self.string[endidx - i]=self.string[startidx+i] self.string[startidx+i]=tmp def get_reverse_result(self): return ''.join(self.string) def move_front_n_to_end(self,n=None): if n is None: n=len(self.string) strlen = len(self.string) if n>strlen: n=n%strlen self.reverse(0,n-1) self.reverse(n, strlen-1) self.reverse(0, strlen-1) def reverse_word(self): strlen = len(self.string) findstart=False for i in range(strlen): if self.string[i]!=' ' and not findstart: findstart=True st=i if self.string[i]==' ' and findstart: ed=i-1 findstart=False self.reverse(st,ed) if findstart: self.reverse(st, strlen-1) self.reverse(0, strlen-1) 测试: rv=ReverseString('客上天然居') rv.reverse() print(rv.get_reverse_result()) rv.reset('hello word!') rv.reverse_word() print(rv.get_reverse_result()) rv.reset('789123456') rv.move_front_n_to_end(3) print(rv.get_reverse_result()) 输出: 居然天上客 word! hello 123456789 喜欢 (0)赏 感谢您的支持,我会继续努力的! 扫码打赏,你说多少就多少 打开支付宝扫一扫,即可进行扫码打赏哦 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |