如何通过封装方法精简这段Python回文数判断代码
Python回文数判断重复逻辑优化方案
你当前代码中数值转换、反转、比对、结果输出的逻辑完全重复编写了两次,将这部分通用逻辑封装为自定义函数即可大幅压缩代码长度,同时降低后续维护成本。
优化思路
- 提取回文校验的通用流程为独立函数,函数仅需接收待校验的整数作为入参,内部完成全流程判断和结果输出
- 原代码中额外将字符串转为列表的步骤可以省略:Python字符串本身支持切片操作,直接对字符串做反转比对即可得到正确结果,减少不必要的类型转换
优化后完整代码
# Exercise 9: Check Palindrome Number def check_palindrome(num): num_str = str(num) # 直接比对原字符串和反转后字符串,无需转列表 if num_str == num_str[::-1]: print("Yes. given number is palindrome number") else: print("No. given number is not palindrome number") # 定义待校验数值 x = 121 y = 125 # 调用函数完成校验 check_palindrome(x) check_palindrome(y)
运行效果
代码执行后输出和原逻辑完全一致:
Yes. given number is palindrome number
No. given number is not palindrome number
如果后续需要新增校验其他数值,只需要新增一行函数调用语句传入对应数值即可,不需要重复复制整段判断分支代码。
内容的提问来源于stack exchange,提问作者Max Benen
相关产品推荐
相关产品推荐

