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

Python使用for循环实现句子按单词反转的空格问题排查

解决单词反转后无空格的问题

你的代码核心问题是只拼接了单词,没有添加单词之间的空格分隔符,所以反转后的单词直接连在了一起。

修改方案

用split()默认分割空白(比split(" ")更健壮,能处理多个空格、制表符等场景),每次拼接单词时带上空格,最后用strip()去掉首尾多余的空格:

def reverse(text):
    rev = ""
    for word in text.split():
        rev = word + " " + rev
    return rev.strip()

# 测试
test_text = "hello how are you"
print(reverse(test_text))  # 输出: you are how hello

原理说明

  1. text.split():自动按任意空白字符分割句子,得到干净的单词列表["hello", "how", "are", "you"]
  2. 循环中每次把当前单词加空格后拼到结果前面,比如第一次循环后rev是"hello ",第二次变成"how hello ",依次类推
  3. rev.strip():去掉结果首尾的多余空格,确保输出格式符合预期

如果必须限定用split(" ")(比如只处理单个空格的场景),可以先过滤掉分割后产生的空字符串(比如句子首尾有空格时),再按同样逻辑处理:

def reverse(text):
    rev = ""
    for word in text.split(" "):
        if word:  # 跳过空字符串
            rev = word + " " + rev
    return rev.strip()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 02:01:11