写入一个函数,输入一个字符串,返回倒序排列的结果

输入:string_reverse('abcdef'),返回:'fedcba',写出你能想到的多种方法

1.使用字符串本身的翻转

def string_reverse1(text='abcdef'):

...    return text[::-1]

2.把字符串变为列表,用列表的reverse函数

>>> def string_reverse2(text='abcdef'):
...     new_text=list(text)
...     new_text.reverse()
...     return ''.join(new_text)
...
>>> print string_reverse2('abcdef')
fedcba

3.新建一个列表,从后往前取

>>> def string_reverse3(text='abcdef'):
...     new_text=[]
...     for i in range(1,len(text)+1):
...         new_text.append(text[-i])
...     return ''.join(new_text)
...
>>> print string_reverse3('abcdef')
fedcba

4.利用双向列表deque中的extendleft函数

>>> from collections import deque
>>> def string_reverse4(text='abcdef'):
...     d = deque()
...     d.extendleft(text)
...     return ''.join(d)
...
>>> print string_reverse4('abcdef')
fedcba

5.递归

>>> def string_reverse5(text='abcdef'):
...     if len(text)<=1:
...         return text
...     else:
...         return string_reverse5(text[1:]+text[0])
...
>>> print string_reverse5('abcdef')
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 9,545评论 1 51
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,645评论 1 118
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,803评论 18 399
  • 去年十一月,刚刚到公司开展研究的时候,每日的重要工作就是通过"Termin"(约时间)系统找同事们做采访。德国人的...
    灰土豆阅读 487评论 0 2
  • 探戈的定义 探戈分为三种: 舞台 沙龙 老舞棍 探戈的目的 找到乐趣 找到朋友 探戈的四个组成部分 平衡 你与地板...
    魔都漫游者阅读 236评论 0 0