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

为什么我编写的Python字符串处理函数无法返回预期的新字符串?

代码问题排查与修正

原有代码错误点

  • 未做单词拆分:直接遍历输入字符串long_string是逐个读取单个字符,并非读取单词,完全不满足提取单词的需求
  • 赋值逻辑触发条件错误:只有当遍历到属于stop_words的内容时才会给new_line赋值,输入字符串不含end/exit时new_line始终是空字符串,自然得不到预期结果;且str.replace()不支持直接传入元组做批量替换,语法本身不生效
  • 拼接逻辑错误:直接对字符串执行join操作会把每个字符单独用;拼接,并非按单词拼接

正确实现

实现逻辑:先用split()方法按任意空白符拆分输入字符串为单词列表(自动过滤空值),再过滤停用词并转大写,最后用;拼接即可。

def fun(long_string):
    stop_words = ('end', 'exit')
    processed_words = [word.upper() for word in long_string.split() if word not in stop_words]
    return ';'.join(processed_words)

# 测试用例
print(fun("this is    a long string"))
# 输出:THIS;IS;A;LONG;STRING
print(fun("hello end world exit test"))
# 输出:HELLO;WORLD;TEST

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 17:36:03