• 技术文章 >后端开发 >Python教程

    Python字符串处理实例详解

    零下一度零下一度2017-06-16 10:33:29原创660
    这篇文章主要为大家详细介绍了Python字符串处理实现单词反转的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    Python字符串处理学习中,有一道简单但很经典的题目,按照单词对字符串进行反转,并对原始空格进行保留:
    如:‘ I love China! ‘
    转化为:‘ China! love I ‘

    两种解决方案:

    方案1:从前往后对字符串进行遍历,如果第一个就是空格,直接跳过,直到第一个不是空格的字符,如果是单独的字母,同样跳过,否则的话,将该单词进行反转,再往后遍历,最后使用reserve方法,让整个字符串从后往前打印。

    方案2:直接使用re(正则化)包进行反转

    代码如下:


    import re
    
    def reserve(str_list, start, end):
      while start <= end:
        str_list[start], str_list[end] = str_list[end], str_list[start]
        end -= 1
        start += 1
    
    str = ' I love china!  '
    str_list = list(str)
    print(str_list)
    i = 0
    print(len(str_list))
    
    # 从前往后遍历list,如果碰到空格,就调用反转函数,不考虑单个字符情况
    while i < len(str_list):
      if str_list[i] != ' ':
        start = i
        end = start + 1
        print(end)
        while (end < len(str_list)) and (str_list[end]!=' '):
          end += 1
        if end - start > 1:
          reserve(str_list, start, end-1)
          i = end
        else:
          i = end
      else:
        i += 1
    
    print(str_list)
    str_list.reverse()
    print(''.join(str_list))
    
    # 采用正则表达式操作
    str_re = re.split(r'(\s+)',str)
    
    str_re.reverse()
    str_re = ''.join(str_re)
    print(str_re)

    以上就是Python字符串处理实例详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Python 字符串
    上一篇:总结python中的线程与协程 下一篇:详解Python中的字符编码
    Web大前端开发直播班

    相关文章推荐

    • 一起聊聊Python的编码样式• 带你搞懂Python反序列化• 一起来分析Python怎么操作XML文件• 归纳整理!Python实用技巧总结• 归纳整理python正则表达式解析
    1/1

    PHP中文网