鱼C论坛

 找回密码
 立即注册
查看: 1289|回复: 2

[已解决]关于pythone递归的问题。。。求助

[复制链接]
发表于 2019-8-16 15:23:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
作业:还记得求回文字符串那道题吗?现在让你使用递归的方式来求解,亲还能骄傲的说我可以吗?

我的作业如下,思路是:每次对比字符串的首字符 和 末字符是否相等, 如果相等把字符串切片,去掉首字符 和 末字符,然后继续递归。



  1. ll = '上海自一水来自海上'

  2. def is_hwl1(x):
  3.     str_len = len(x)
  4.     if str_len % 2 == 0:
  5.         return False

  6.     if x[0] != x[-1]:
  7.         print("当前字符串:%s , 首字符:%c ,末字符:%c " %(x, x[0], x[-1]))  # 在这里遇到问题,明明判断字符不一样,代码执行到这里了,下一句就是返回False,但是 返回确实True??!!
  8.         return False
  9.     else:
  10.         if str_len-1 >= 3:
  11.             is_hwl1(x = x[1:str_len-1])

  12.     return True


  13. print(is_hwl1(ll))
复制代码


输出结果:
  1. 当前字符串:一水来 , 首字符:一 , 末字符:来   
  2. True
  3. >>>
复制代码
最佳答案
2019-8-16 15:26:51
这是你没有 return 导致的,加上就好了:

  1. ll = '上海自一水来自海上'

  2. def is_hwl1(x):
  3.     str_len = len(x)
  4.     if str_len % 2 == 0:
  5.         return False

  6.     if x[0] != x[-1]:
  7.         print("当前字符串:%s , 首字符:%c ,末字符:%c " %(x, x[0], x[-1]))  # 在这里遇到问题,明明判断字符不一样,代码执行到这里了,下一句就是返回False,但是 返回确实True??!!
  8.         return False
  9.     else:
  10.         if str_len-1 >= 3:
  11.             return is_hwl1(x = x[1:str_len-1])

  12.     return True


  13. print(is_hwl1(ll))
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-8-16 15:26:51 | 显示全部楼层    本楼为最佳答案   
这是你没有 return 导致的,加上就好了:

  1. ll = '上海自一水来自海上'

  2. def is_hwl1(x):
  3.     str_len = len(x)
  4.     if str_len % 2 == 0:
  5.         return False

  6.     if x[0] != x[-1]:
  7.         print("当前字符串:%s , 首字符:%c ,末字符:%c " %(x, x[0], x[-1]))  # 在这里遇到问题,明明判断字符不一样,代码执行到这里了,下一句就是返回False,但是 返回确实True??!!
  8.         return False
  9.     else:
  10.         if str_len-1 >= 3:
  11.             return is_hwl1(x = x[1:str_len-1])

  12.     return True


  13. print(is_hwl1(ll))
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-8-16 15:34:07 | 显示全部楼层
哦。。。原来如此。。。。谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-20 13:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表