python将给定的字符串列表大写

时间:2018-06-23 06:01:02

标签: python string python-3.x list

我在以下代码中遇到了问题

def capitalize_names(my_input):
    """fill in the function"""
    return 

def test_capitalize_names():
    assert ["James"] == capitalize_names(["JAMES"])
    assert ["Harry", "Jack"] == capitalize_names(["HArry", "jack"])

我用下面的代码填写了上面的功能

my_input = map(str.capitalize, my_input)

return my_input

它正在返回['James'],但我希望它返回["James"]来满足assert语句,并且我不能使用任何控制语句

3 个答案:

答案 0 :(得分:2)

尝试一下:

def capitalize_names(input):
    return list(map(lambda s: s.capitalize(), input))

这是执行此操作的有效方法。

答案 1 :(得分:1)

最快的方法是:

def capitalize_names(inp):
    return [i.capitalize() for i in inp]
def test_capitalize_names():
    assert ["James"] == capitalize_names(["JAMES"])
    assert ["Harry", "Jack"] == capitalize_names(["HArry", "jack"])

答案 2 :(得分:1)

更简洁的方法:例如:

Blocked loading mixed active content
相关问题