輸入:string_reverse('abcdef'),返回:'fedcba',寫出你能想到的多種方法
1.使用字符串本身的翻轉(zhuǎn)
def string_reverse1(text='abcdef'):
... return text[::-1]
2.把字符串變?yōu)榱斜?,用列表的reverse函數(shù)
>>> 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函數(shù)
>>> 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')