Discuss / Python / 这些代码直接复制粘贴 在执行,发现运行结果完全不对。

这些代码直接复制粘贴 在执行,发现运行结果完全不对。

Topic source

from multiprocessing import Pool import os, time, random

def long_time_task(name): print('Run task %s (%s)...' % (name, os.getpid())) start = time.time() time.sleep(random.random() * 3) end = time.time() print('Task %s runs %0.2f seconds.' % (name, (end - start)))

if name=='main': print('Parent process %s.' % os.getpid()) p = Pool(4) for i in range(5): p.apply_async(long_time_task, args=(i,))

print('Waiting for all subprocesses done...')
p.close()
p.join()
print('All subprocesses done.')



**运行结果:**

Parent process 2740. Waiting for all subprocesses done... All subprocesses done.

渡俊

#2 Created at ... [Delete] [Delete and Lock User]

要在cmd 中运行 python +你模块的绝对路径 (在idle中直接运行是出现你的那个情况)

弓长锡旺

#3 Created at ... [Delete] [Delete and Lock User]
>>> ================================ RESTART ================================
>>> 
Traceback (most recent call last):
  File "C:/Python34/multiprocessing.py", line 1, in <module>
    from multiprocessing import Process
  File "C:/Python34\multiprocessing.py", line 1, in <module>
    from multiprocessing import Process
ImportError: cannot import name 'Process'

有没有人遇到这种状况?

是不是漏掉了下面的叹号

#!/usr/bin/env python3

十年行川

#5 Created at ... [Delete] [Delete and Lock User]

我碰到了这种情况,加了!还是没用


  • 1

Reply