Python 我无法运行mincemeat.py-一堆未知内容被打印到终端
我正在写一篇关于地图还原的家庭作业。我在终点站运行:Python 我无法运行mincemeat.py-一堆未知内容被打印到终端,python,mincemeat,Python,Mincemeat,我正在写一篇关于地图还原的家庭作业。我在终点站运行: ioannis@ioannis-desktop:~$ python hw3.py python mincemeat.py -p changeme localhost 然后在另一个终端: ioannis@ioannis-desktop:~$ python hw3.py python mincemeat.py -p changeme localhost 在前一个终端中,立即输入了一堆内容: ioannis@ioannis-桌面:~$pyt
ioannis@ioannis-desktop:~$ python hw3.py
python mincemeat.py -p changeme localhost
然后在另一个终端:
ioannis@ioannis-desktop:~$ python hw3.py
python mincemeat.py -p changeme localhost
在前一个终端中,立即输入了一堆内容:
ioannis@ioannis-桌面:~$python hw3.py
错误:未捕获的python异常,正在关闭通道
(:'NoneType'对象不可iterable
[/usr/lib/python2.7/asyncore.py | read | 83]
[/usr/lib/python2.7/asyncore.py | handle | read | event | 449]
[/usr/lib/python2.7/asynchat.py | handle|u read | 158]
[/home/ioannis/mincemeat.py | found | u terminator | 82]
[/home/ioannis/mincemeat.py | process|u command | 280]
[/home/ioannis/mincemeat.py | process|u command | 123]
[/home/ioannis/mincemeat.py |回应挑战| 106]
[/home/ioannis/mincemeat.py | post|u auth|u init | 289]
[/home/ioannis/mincemeat.py |开始新任务| 258]
[/home/ioannis/mincemeat.py | next|u task | 304])
^CTraceback(最近一次通话最后一次):
文件“hw3.py”,第54行,在
结果=s.run_服务器(password=“changeme”)
文件“/home/ioannis/mincemeat.py”,第220行,在运行服务器中
self.close_all()
文件“/usr/lib/python2.7/asyncore.py”,第421行,在__
%(自我、职业、名称、属性)
AttributeError:服务器实例没有“全部关闭”属性
ioannis@ioannis-桌面:~$python hw3.py
hw3.py的代码:
import mincemeat
import glob
from stopwords import allStopWords
text_files = glob.glob('/home/ioannis/Web Intelligence and Big Data/Week 3: Load - I/hw3data/hw3data/*')
def file_contents(file_name):
f = open(file_name)
try:
# print f.read()
return f.read()
except:
print "exception!!!!!!"
finally:
f.close()
source = dict((file_name, file_contents(file_name))
for file_name in text_files)
def mapfn(key, value):
for line in value.splitlines():
print "I have reach that point!"
...........
...........
def reducefn(k, vs):
result = sum(vs)
return result
s = mincemeat.Server()
s.source = source
s.mapfn = mapfn
s.reducefn = reducefn
results = s.run_server(password="changeme")
print results
在线程中,提出了以下建议:
将句柄_accept()更改为在accept()返回None时立即返回
在mincemeat.py文件中有一个函数:
def handle_accept(self):
conn, addr = self.accept()
sc = ServerChannel(conn, self)
sc.password = self.password
我的问题的解决方案是更改该函数中的某些内容吗?
s.source=source
需要是s.datasource=source