如何让Sentence Smash Kata中的smash函数运行并返回合并列表?
问题分析与修复方案
你的代码存在两个核心问题:
- 函数内部硬编码了固定数组
a,完全没用到传入的words参数——不管测试用例给什么输入,你都返回固定句子,这必然通不过所有测试。 - 调用函数时传入了空字符串
"",但这个Kata要求的参数是字符串数组(比如["hello", "world"]),不是单个字符串。
修复后的代码
def smash(words): return " ".join(words) # 测试示例(可根据测试用例调整传入的数组) smash(["hello", "world"]) # 返回 "hello world" smash([]) # 返回空字符串,符合空输入的处理逻辑
关键说明
- 不需要“实例化”
words参数,它就是测试用例传入的字符串数组,直接传给" ".join()方法即可——这个方法会自动把数组元素用空格拼接成完整句子。 - 如果传入空数组
[]," ".join([])会返回空字符串,这也符合Kata对空输入的预期。
内容的提问来源于stack exchange,提问作者steezyiscoding
相关产品推荐
相关产品推荐

