金昌市网站建设_网站建设公司_产品经理_seo优化
2025/12/25 11:56:26 网站建设 项目流程

编写一个名为 rev() 的函数,传入参数s,实现对字符串x反转。
函数内首先通过判断字符串s是否为空(""),或者s的长度是否为1,若满足则反转后的字符串为本身;
否则,通过字符串切片和递归实现字符串反转。
最后,传入参数s为"yequbiancheng",调用函数rev() 并输出结果。

实际答案:

def rev(s):if len(s) <= 1:print(s)else:for i in range(len(s) + 1):if i == 0:continueelse:print(s[-i],end = '')s = "yequbiancheng"
rev(s)
print("")

标准答案:

def rev(s):if len(s) <= 1:print(s)else:for i in range(len(s) + 1):if i == 0:continueelse:print(s[-i],end = '')s = "yequbiancheng"
rev(s)
print("\n")

image
点评:
实际答案后面发现不符合题目要求,因为没有用到递归
递归:
当字符串长度为0或1时,无需反转,直接返回原字符串。这是递归的终止条件,防止无限调用。
else: 递归调用:最后一个字符 + 剩余字符串的反转

此外,一开始运行显示结果不对,经过调试发现是与标准答案运行结果相比少了一个空行。
因为python打印默认带空行,
但是实际答案中是分字符打出的,所以要用end = ""来消除空行。
导致最后一个字符输出的时候仍然没有空行。
解决办法是在最后补一个print()或者print("")即可。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询