Python学习笔记:字符串翻转(切片与递归)

样例输入:CUMT1909 

样例输出:9091TMUC

递归思想:

递归的边界条件即为最多只有一个字符的时候,此时翻转前后,结果不变。

翻转后的字符串为原来的最后一个元素 + 前n-1个元素翻转后的状态,即对前n-1的字符串切片递归调用函数

def rev(s):
    if s == "" or len(s) == 1:  # 递归边界条件:首先通过判断字符串s是否为空(""),或者s的长度是否为1,若满足则反转后的字符串为本身;
        return s
    else:
        revStr = s[-1] + rev(s[0:len(s)-1]) # 翻转后的字符串为最后一个元素+前len-1个元素翻转后的序列(递归调用)
        return revStr
Str = input("请输入要翻转的字符串:")
print(rev(Str))

你可能感兴趣的:(python学习笔记,学习,python)