PHP前端开发

Python如何反转字符串

百变鹏仔 2个月前 (01-23) #Python
文章标签 字符串
反转方法: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)

当然下面也行

立即学习“Python免费学习笔记(深入)”;

l = list(s)result = "".join(l[::-1])

第三种:使用reduce

result = 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 resultresult = func(s)

第六种:for循环

def func(s):    result = ""    max_index = len(s)-1    for index,value in enumerate(s):        result += s[max_index-index]    return resultresult = func(s)