有人能帮我用mapper函数和reducer函数在文本文件中找到最小的单词吗?
import sys #importing from the system
smallest = None
for line in sys.stdin: #taking input from the system
line = line.strip() #leaving the unwanted whitespaces
words = line.split("\t") #spliting the words with delimiter TAB
smallest= min([len(word) for word in words]) #finding the smallest word
print ('%s' % (smallest)) #printing the snallest word
2条答案
按热度按时间wvmv3b1j1#
我假设你想找到最短的单词,这样做不使用列表理解。
min()接受用于比较的可选键。可以使用lambda函数来获取单词的长度。
另一种方法是使用python的内置sorted()。
有关内置函数的更多信息,请参阅文档
8qgya5xd2#
首先将数据附加到此列表中
k=['1111','222222','a',...]
然后你可以用这个:或者如果不想使用lambda,请使用list的bif函数:
这将使您获得列表中最短的元素