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