You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3.x字符串与列表操作:如何判断输入句子是否为回文

Python回文判断功能实现方案

需求说明

  • 基于Python3.x实现句子回文判断,规则为句子正读和反读内容完全一致
  • 预处理要求:统一字符大小写、去除句子中空格后再做判断
  • 测试用例:
    • 输入"MrOwl ate my metal worm" → 判定为回文
    • 输入"Rose fell" → 判定为非回文

原代码问题点

原有代码已经完成了转小写、按空格拆分的操作,仅缺少列表转无空格字符串的步骤,不需要额外写for循环遍历拼接。

实现方法

列表拼接为无分隔符字符串直接使用''.join(待拼接列表)即可,完整可运行代码如下:

# 可替换为任意待测试的输入文本
raw_text = 'MrOwl ate my metal worm'
# 文本预处理:转小写→按空格拆分→拼接为无空格字符串
processed_text = ''.join(raw_text.lower().split())
# 回文判断并输出结果
if processed_text == processed_text[::-1]:
    print(f'"{raw_text}" -> 该文本是回文')
else:
    print(f'"{raw_text}" -> 该文本不是回文')

逻辑说明

  1. lower()将所有字符转为小写,消除大小写差异对判断结果的影响
  2. split()默认按任意空白字符切割字符串,得到单词列表
  3. ''.join()将列表中的所有单词直接拼接,自动去除所有原句中的空格
  4. 字符串切片[::-1]可以快速得到反转后的字符串,和预处理后的原字符串直接比较即可完成回文判断

测试结果

  • 测试文本MrOwl ate my metal worm预处理后得到mrowlatemymetalworm,反转后与原串完全一致,判定为回文
  • 测试文本Rose fell预处理后得到rosefell,反转后为llefesor,与原串不一致,判定为非回文

内容的提问来源于stack exchange,提问作者Ben

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 09:54:02