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