如何修改Python Palindrome类,新增original_text、reversed_text属性实现预期功能
Palindrome类调整方案
你当前编写的代码仅支持整数类型的回文判断,没有实现要求的original_text、reversed_text属性,也不支持字符串输入,不符合你给出的运行示例要求,可按以下方式调整:
核心修改点
- 重写初始化方法:将传入的参数转为字符串后存入
original_text属性,同时通过字符串切片生成倒序内容存入reversed_text属性 - 简化回文判断逻辑:直接对比
original_text和reversed_text的一致性即可,无需原来的数字逐位取余计算逻辑
调整后完整代码
class Palindrome: def __init__(self, text): self.original_text = str(text) self.reversed_text = self.original_text[::-1] def is_palindrome(self): return self.original_text == self.reversed_text
运行验证
上述代码完全符合你给出的预期运行效果:
>>> palindrome = Palindrome('eye') >>> palindrome.original_text 'eye' >>> palindrome.reversed_text 'eye' >>> palindrome.is_palindrome() True >>> palindrome = Palindrome('dye') >>> palindrome.original_text 'dye' >>> palindrome.reversed_text 'eyd' >>> palindrome.is_palindrome() False
额外兼容数字类型的回文判断:
>>> palindrome = Palindrome(12321) >>> palindrome.is_palindrome() True
内容的提问来源于stack exchange,提问作者PTP_XX
相关产品推荐
相关产品推荐

