Sha*_*ed. 4 python list-comprehension list lowercase
我正在做一个涉及完成大量在线问题的Python课程,而且任务看起来非常简单(获取字符串列表并将其转换为小写).但是,无论我尝试什么,我的代码都会失败.我已经尝试过列表理解和循环,但无济于事 - 它只是说失败的测试.以下是代码:
def lowercase(strings):
"""takes a list strings and replaces string with lowercase words"""
strings = [x.lower() for x in strings]
return strings
strings = ['LOWER', 'CASE', 'SENTENCE']
lowercase(strings)
print(strings)
Run Code Online (Sandbox Code Playgroud)
我提供的部分是:
def lowercase(strings):
"""takes a list strings and replaces string with lowercase words"""
strings = ['LOWER', 'CASE', 'SENTENCE']
lowercase(strings)
print(strings)
Run Code Online (Sandbox Code Playgroud)
所以我只允许在函数中编写将'strings'更改为小写的代码(我可以在doc字符串下编写代码,但我不能修改任何其他内容,例如删除这三行测试代码).因为他们的测试声明字符串并在我的代码下调用函数,它似乎只是覆盖我写的任何东西!我觉得我疯了,因为这是一个初学者的问题,我不能让它通过测试.我做错了什么?谢谢!
您只需要进行一些小改动:使用切片分配修改列表,而不是创建新列表.然后你不需要返回它(实际上,Python惯例是不这样做).
def lowercase(strings):
"""takes a list of strings and replaces each with lowercase version"""
strings[:] = (x.lower() for x in strings)
Run Code Online (Sandbox Code Playgroud)