零基础入门Python24讲课后作业递归测试回文结构的问题
题目是:2. 还记得求回文字符串那道题吗?现在让你使用递归的方式来求解,亲还能骄傲的说我可以吗?我的代码是:
def sym(string):
string = str(string)
length = len(string)
if length == 0 or length == 1:
return 1
elif length > 1:
if string == string:
sym(string)
return 1
else:
return 0
print(sym(1231))
为什么结果是1呢?求大神解答,谢谢! 这个函数里只有 return 0 和 return 1,不然呢 本帖最后由 Twilight6 于 2020-5-18 11:19 编辑
因为你自己写的代码返回值就是这样丫
我在你的基础上更改了下代码:
def sym(string):
string = str(string)
length = len(string)
if length == 1:
return '是回文联'
elif length > 1:
if string == string[-1]:# [-1] 就是代表最后一个位置参数
return sym(string)
else:
return '不是回文联'
print(sym(1321))
如果帮助到你了~记得给个最佳哈{:10_287:}
这就是你写的代码啊,一个return 0,一个return 1啊 _2_ 发表于 2020-5-18 11:09
这个函数里只有 return 0 和 return 1,不然呢
你应该返回反转之后的字符串,而不是布尔值 你应该返回反转之后的字符串,而不是布尔值 qiuyouzhi 发表于 2020-5-18 11:10
这就是你写的代码啊,一个return 0,一个return 1啊
给我吧{:10_254:},求你了
页:
[1]