Python中文
首页
教程
问答
标签
搜索
登录
注册
python:递归检查以确定字符串是否为回文
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我的任务是定义一个过程是回文,它接受一个字符串作为输入,并返回一个布尔值,指示输入字符串是否是回文。在这种情况下,单个字母应该返回True,空字符串也应该返回<code>''</code>。</p> <p>不幸的是,我没有得到预期的结果。我很感激你的帮助。</p> <p>我的代码版本1:</p> <pre><code>def is_palindrome(s): if s == '': return True else: if (ord(s[0]) - ord(s[len(s)-1])) == 0: is_palindrome(s[1:len(s)-1]) else: return False print is_palindrome('') #>>> True (expected = True) print is_palindrome('abab') #>>> False (expected = False) print is_palindrome('abba') #>>> None (expected = True) print is_palindrome('andrea') #>>> None (expected = False) print is_palindrome('abaaba') #>>> None (expected = True) </code></pre> <p>我通过调试器跟踪我的代码,当代码采用适当的路径时,逻辑似乎是正确的。然而,对于上面强调的一些情况,最终结果似乎会切换到“无”。</p> <p>如果我将代码更改为以下内容:</p> <p>我的代码版本2:</p> <pre><code>def is_palindrome(s): if s == '': result = True else: if (ord(s[0]) - ord(s[len(s)-1])) == 0: is_palindrome(s[1:len(s)-1]) else: result = False return result print is_palindrome('') #>>> True (expected = True) print is_palindrome('abab') #>>> False (expected = False) print is_palindrome('abba') #>>> Error (expected = True) UnboundLocalError: local variable 'result' referenced before assignment print is_palindrome('andrea') #>>> Error (expected = False) UnboundLocalError: local variable 'result' referenced before assignment print is_palindrome('abaaba') #>>> Error (expected = True) UnboundLocalError: local variable 'result' referenced before assignment </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>在第一个示例中,您忘记了返回语句:</p> <pre><code>def is_palindrome(s): if s == '': return True else: if (ord(s[0]) - ord(s[len(s)-1])) == 0: # v-- forgot this here return is_palindrome(s[1:len(s)-1]) else: return False </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
Python中两个字典的交集
2 回答
python中两个字符串上的异或操作数?
4 回答
Python中两个字符串中的类似句子
3 回答
Python中两个字符串之间的Hamming距离
7 回答
python中两个字符串之间的匹配模式
9 回答
python中两个字符串之间的按位或
10 回答
python中两个字符串之间的数据(字节)切片
9 回答
python中两个字符串之间的模式
6 回答
python中两个字符串作为子字符串的区别
5 回答
Python中两个字符串元组的比较
3 回答
Python中两个字符串列表中的公共字符串
6 回答
python中两个字符串的Anagram测试
4 回答
Python中两个字符串的正则匹配
3 回答
python中两个字符串的笛卡尔乘积
3 回答
Python中两个字符串相似性的比较
7 回答
python中两个字符串语义相似度的求法
2 回答
Python中两个字符置换成固定长度的字符串,每个字符的数目相等
7 回答
Python中两个对数方程之间的插值和平滑数据
1 回答
Python中两个对象之间的And/Or运算符
3 回答
python中两个嵌套字典中相似键的和值
6 回答