反转方法:1、使用切片法来反转,语法“字符串[::-1]”。2、首先将字符串转换成列表;然后使用reverse()反转列表元素;最后将反转的列表转换会字符串即可。3、使用reduce()函数,语法“reduce(lambda x,y:y+x,字符串)”。
面试遇到的一个特无聊的问题~~~
要求:在Python环境下用尽可能多的方法反转字符串,例如将s = "abcdef"反转成 "fedcba"
第一种:使用字符串切片>>> s="abcdef"
>>> result = s[::-1]
>>> print(result)
输出:fedcba
第二种:使用列表的reverse方法l = list(s)
l.reverse()
result = "".join(l)
当然下面也行l = list(s)
result = "".join(l[::-1])
第三种:使用reduceresult = reduce(lambda x,y:y+x,s)
第四种:使用递归函数def func(s):
if len(s) <1:
return s
return func(s[1:])+s[0]
result = func(s)
第五种:使用栈def func(s):
l = list(s) #模拟全部入栈
result = ""
while len(l)>0:
result += l.pop() #模拟出栈
return result
result = func(s)
第六种:for循环def func(s):
result = ""
max_index = len(s)-1
for index,value in enumerate(s):
result += s[max_index-index]
return result
result = func(s)
以上就是Python如何反转字符串的详细内容,更多请关注php中文网其它相关文章!
本文原创发布php中文网,转载请注明出处,感谢您的尊重!