Python: reverse string

  

 

  1. ''.join(reversed('abcd'))

     

  2. 切片
    p[::-1]
    
    p[-1::-1]
    
    p[-1:-(len(p)+1:-1]

     

  3. from functools import reduce
    
    b = 'rty'
    
    print(reduce(lambda prev, curr: curr + prev, b))
    print(reduce(lambda prev, curr: curr + prev, b, '!'))

     

  4. recursion
    复制代码
    b = 'rtyu'
    
    
    def bud(s: str):
        if len(s) == 1:
            return s
        return bud(s[1:]) + s[0]
    
    
    print(bud(b))
    复制代码

     

  5. simulate stack
    复制代码
    b = 'rtyu'
    
    
    def bud(s: str):
        vale = list(s)
        ret = ''
        while vale:
            ret += vale.pop(-1)
        return ret
    
    
    print(bud(b))
    复制代码

     

  6. exploit circulate
    复制代码
    b = 'rtyu'
    
    
    def bud(s: str):
        era = ''
    
        # 0 1 .. len(s)-1
        # for p in range(len(s)):
        #     era += s[-p - 1]
        #     era += s[len(s) - 1 - p]
        
        # len(s)-1 ... 1 0
        # for p in range(len(s) - 1, -1, -1):
        #     era += s[p]
        
        for i, _ in enumerate(s):
            era += s[len(s) - 1 - i]
            
        return era
    
    
    print(bud(b))
    复制代码

     

  7. b = 'rtyu'
    
    print(b[slice(-1, -(len(b) + 1), -1)])

     

posted @   ascertain  阅读(134)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示