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

Python字符串三倍重复函数paper_doll输出异常求助

问题分析与修正

你的代码问题出在循环里的拼接语句:

result += result + tripled_letter

错误原因拆解

每次循环时,你错误地把当前的result重复了一次,再加上三倍字符,导致结果不断翻倍累积:

  • 第一次循环(处理'H'):初始result是空字符串,result + tripled_letter等于'' + 'HHH',执行result +=后,result变成'HHH'
  • 第二次循环(处理'e'):result + tripled_letter等于'HHH' + 'eee',执行result +=后,result变成'HHH' + 'HHHeee' = 'HHHHHHeee'
  • 后续每一次循环都会把之前的结果再复制一遍,再拼接新的三倍字符,最终输出自然会出现大量重复内容

修正方法

把拼接语句改成直接追加三倍字符即可:

def paper_doll(text):
    result = ''
    for letter in text:
        tripled_letter = letter*3
        result += tripled_letter  # 只追加当前字符的三倍形式
    return result

或者更简洁的写法,用生成器表达式一次性拼接:

def paper_doll(text):
    return ''.join([c*3 for c in text])

测试paper_doll('Hello'),就能得到预期的'HHHeeellllllooo'了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 12:01:00