我刚开始学习mapreduce与Octo模块与单词计数的例子。我尝试计数在目录hw3data中的单词(如下所示)。我的电脑既是服务器又是客户端。
我从windows cmd开始,有两个终端
server: oct .py server wordcount.py似乎服务器端启动没有问题
client: oct .py client localhost似乎python找不到我存储在hw3data目录中的txt文件,所以它说no work, sleeping。有人能帮忙吗?
wordcount.py代码在
下面wordcount.py
<标题>服务器import glob
text_files=glob.glob('C:/Python27/octopy-0.1/hw3data/*.txt')
def file_contents(file_name):
f=open(file_name)
try:
return f.read()
finally:
f.close()
source=dict((file_name,file_contents(file_name)) for file_name in text_files)
f=open('outfile','w')
def final(key,value):
print key,value
f.write(str((key,value)))
<标题>客户def mapfn(key,value):
for line in value.splitlines():
for word in line.split():
yield word.lower(),1
def reducefn(key,value):
return key,len(value)
标题>标题>验证您的数据文件名称中是否包含".txt"。我现在正在做作业#3中的这道题。好运!
修改以下代码
text_files=glob.glob('C:/Python27/octopy-0.1/hw3data/*.txt')
text_files=glob.glob('C:/Python27/octopy-0.1/hw3data/*')
和尝试。我猜文件夹里的文件没有扩展名