python 实现字符串反转的几种方法

1.字符串切片

s = "hello"
reversed_s = s[::-1]
print(reversed_s)

>>> olleh

2.列表的reverse方法

s = "hello"
l = list(s)
l.reverse()
reversed_s = "".join(l)
print(s)

>>> olleh

3.使用reduce函数

在python2中可直接使用reduce函数,在python3中需在functools库里导入。

reduce函数语法:

   reduce(function, iterable[, initializer])  function--函数,有两个参数  iterable--可迭代对象  initializer--可选,初始参数

使用方法如下:

from functools import reduce
def add(x,y):
    return x+y

res = reduce(add, [1,2,3,4,5])
print(res)

>>> 15

 

from functools import reduce
s = "hello"
reversed_s = reduce(lambda x, y: y+x, s)
print(reversed_s)

>>>olleh

4.python3 reversed函数

reversed函数返回一个反转的迭代器

语法:

  reversed(seq)  seq--需要转换的序列,可以是元组,列表,字符串等。

s = "hello"
l = list(reversed(s))
reversed_s = ''.join(l)
print(s)

>>>olleh

5.使用递归函数

def func(s):
    if len(s) < 1:
        return s
    return func(s[1:]) +s[0]


s = 'hello'
result = func(s)
print(result)

>>>
olleh

6.使用栈

s = "hello"
l = list(s)
result = ""
while(len(l)>0):
    result += l.pop()
print(result)

>>>olleh

7.for循环

s = 'hello'
l = list(s)
for i in range(int(len(s)/2)):
    tmp = l[i]
    l[i] = l[len(s)-i-1]
    l[len(s)-i-1] = tmp
print(''.join(l))

>>>olleh

  

 

转载于:https://www.cnblogs.com/lovewhale1997/p/11364256.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值