的Win 7,64,Python 2.7版,蟒蛇4.2.0,5.1.0的IPythonIPython控制台不显示某些输出,但显示其他人?
我通过一些multiprocessing
教程&工作打了一个问题,马上,而在IPython的控制台工作。下面的代码...
import multiprocessing
print 'hello'
def worker():
"""worker function"""
print 'Worker'
return
jobs = []
for i in range(5):
p = multiprocessing.Process(target=worker)
jobs.append(p)
p.start()
我期待......
hello
worker
worker
worker
worker
worker
但我正在逐渐..
hello
为什么从worker
函数的输出不显示在IPython控制台中?
编辑:当从Anaconda命令行运行时,它在print 'Worker'
行上出现语法错误,但是如果我按住Enter键从Python控制台运行,则按预期运行。编辑2:现在在Anaconda命令窗口中工作(我安装了错误的Python)。这个问题似乎不仅限于此代码。任何并行化函数中的任何打印语句都不会出现在IPython控制台中。
顺便说一句,SO需要2条换行符才能在新行上显示文本。使用代码格式来解决这个问题。 – Carcigenicate
我怀疑这一点,因为在你给工人一个印刷机会之前,程序正在结束。 – Carcigenicate
您可以通过防止程序以某种方式结束测试,例如在开始作业后询问用户输入。 – Carcigenicate