python中字符串的翻转(方法总结)

Python翻转字符串(reverse string), 一共包含5种方法, 其中第一种最简单, 即步长为-1, 输出字符串;

方法如下

5种方法的比较:

1. 简单的步长为-1, 即字符串的翻转(常用);

2. 交换前后字母的位置;

3. 递归的方式, 每次输出一个字符;

4. 双端队列, 使用extendleft()函数;

5. 使用for循环, 从左至右输出;

代码:

   # -*- coding: utf-8 -*-  
    string = 'abcdef'  
      
    def string_reverse1(string):  
        return string[::-1]  
      
    def string_reverse2(string):  
        t = list(string)  
        l = len(t)  
        for i,j in zip(range(l-1, 0, -1), range(l//2)):  
            t[i], t[j] = t[j], t[i]  
        return "".join(t)  
      
    def string_reverse3(string):  
        if len(string) <= 1:  
            return string  
        return string_reverse3(string[1:]) + string[0]  
      
    from collections import deque  
    def string_reverse4(string):  
        d = deque()  
        d.extendleft(string)  
        return ''.join(d)  
      
    def string_reverse5(string):  
        #return ''.join(string[len(string) - i] for i in range(1, len(string)+1))  
        return ''.join(string[i] for i in range(len(string)-1, -1, -1))  
      
    print(string_reverse1(string))  
    print(string_reverse2(string))  
    print(string_reverse3(string))  
    print(string_reverse4(string))  
    print(string_reverse5(string))  
 
 

输出:

    fedcba  
    fedcba  
    fedcba  
    fedcba  
    fedcba  

 

转载于:https://www.cnblogs.com/zhou-jun/p/10195735.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值