zoukankan      html  css  js  c++  java
  • python基本语法2.7--综合训练之实现字符串的翻转

    问题描述:

    字符串按单词反转(必须保留所有空格)。' I love china! '转化为'' china! love I ' 

    1.http://blog.csdn.net/caroline_wendy/article/details/23438739

    参考上述博客了解到实现python字符串的五种方法

    # -*- coding: utf-8 -*-  
      
    #eclipse pydev, python 3.3  
    #by C.L.Wang   
    #time: 2014. 4. 11  
      
    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))  

    2.思路:先将整个字符串翻转,得到['!anihC', 'evol', 'I']

        然后将字符串切分开,得到'!anihC' 'evol' 'I'

        将每个单词再翻转,得到['China!', 'love', 'I']

        最后将单词合并,得到China! love I

    3.代码

    # -*- coding:utf-8_-*-
    #字符串反转
    import  string
    str='I love China!'
    def string_reverse(string):
        return string[::-1]
    strArr=(string_reverse(str)).split(' ')
    print(strArr)
    for i in range(0,2):
        strArr[i]=string_reverse(strArr[i])
    
    print(strArr)
    print(' '.join(strArr))
  • 相关阅读:
    smarty的学习
    用接口实现封装的一个mysqli工具类
    centos7/8安装java和mysql
    Mysql 8.0 忘记密码报错1045办法,skip-grant-tables不管用
    卸载vivo手机自带的应用程序
    DevOps的学习(一)
    quartzy的spring注入问题
    html加载执行的顺序
    关于时间Date转换成long类型的方法(时间戳的转换)
    系统中出现乱码
  • 原文地址:https://www.cnblogs.com/xiaoyingying/p/7695271.html
Copyright © 2011-2022 走看看