问题:我想提高对python map函数的理解。我做了一个函数,可以将给定短语中单词的长度作为列表返回。但是,我想简单地将map函数与lambda函数一起使用,并传入一个字符串。另外,我正在使用python 3。
当前功能(WORKS):
phrase = 'How long are the words in this phrase'
def word_lengths(phrase):
phrase = phrase.split(' ')
wordLengthList = []
for i in range(len(phrase)):
wordLengthList.append(len(phrase[i]))
return wordLengthList
word_lengths(phrase)
地图的当前实现(无效):
list(map(lambda x: len(x.split(' ')), phrase))
如果有人可以帮助我解决此问题,我将不胜感激。
最佳答案
您需要为短语变量拆分输入参数。
print(list(map(lambda x: len(x), phrase.split(" "))))
输出:
[3, 4, 3, 3, 5, 2, 4, 6]
从评论:更好的方法。感谢Lukas Graf。
print(list(map(len, phrase.split(" ")))
关于python - 用内置于 map 函数中的python替换函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48623671/