我正在学习弹性 mapreduce,并从 Amazon 教程部分中提供的 Word Splitter 示例开始(代码如下所示)。该示例为提供的所有输入文档中的所有单词生成字数。
但我想通过文件名获得字数的输出,即仅在一个特定文档中的字数。由于用于字数统计的 python 代码从标准输入获取输入,我如何判断哪个输入行来自哪个文档?
谢谢。
#!/usr/bin/python
import sys
import re
def main(argv):
line = sys.stdin.readline()
pattern = re.compile("[a-zA-Z][a-zA-Z0-9]*")
try:
while line:
for word in pattern.findall(line):
print "LongValueSum:" + word.lower() + "\t" + "1"
line = sys.stdin.readline()
except "end of file":
return None
if __name__ == "__main__":
main(sys.argv)