如: 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)
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)
4.利用双向列表 deque 中的 extendleft 函数
from collections import deque
def string_reverse4(text='abcdef'):
d = deque()
d.extendleft(text)
return ''.join(d)
5.递归
def string_reverse5(text='abcdef'):
if len(text)<=1:
return text
else:
return string_reverse5(text[1:]+text[0])