导入错误:找不到'multiprocessing.forking'模块

4
我正在运行Python 3.5并尝试在命令行中运行来自此Django应用程序的一些代码,出现了以下情况:
C:\Users\username\Envs\mysite> python service.py --startup=auto install
Traceback (most recent call last):
  File "service.py", line 14, in <module>
    from django_windows_tools.service import DjangoService,test_commands
  File "C:\Users\username\AppData\Local\Programs\Python\Python35\lib\site-packages\django_windows_tools\service.py", line 39, in <module>
    import multiprocessing.forking
ImportError: No module named 'multiprocessing.forking'

我不确定是什么导致了这个问题。

1个回答

4

Python v2.6/2.7 默认安装了 forking.py,但是 v3.5.1 不存在该模块。

[root@localhost usr]# find /usr -name multiprocessing
/usr/lib64/python2.7/multiprocessing
/usr/lib64/python3.5/multiprocessing
[root@localhost usr]# find /usr -name forking.py
/usr/lib64/python2.7/multiprocessing/forking.py

由于某些原因,Python3.5.1中没有forking.py。你运行的软件包不支持Python3,你可以在git仓库上报告问题或使用Python2安装。

[root@localhost usr]# python3
Python 3.5.1 (default, Mar  4 2016, 15:21:15)
[GCC 6.0.0 20160302 (Red Hat 6.0.0-0.14)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import multiprocessing
>>> import multiprocessing.forking
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'multiprocessing.forking'

虽然 Python2 没有问题

[root@localhost usr]# python2
Python 2.7.12 (default, Sep  2 2016, 14:46:00)
[GCC 6.1.1 20160621 (Red Hat 6.1.1-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import multiprocessing
>>> import multiprocessing.forking

2
这篇文章讲解了如何在Python3.4及以上版本中使用multiprocessing.forking。https://github.com/pyinstaller/pyinstaller/wiki/Recipe-Multiprocessing - Gang

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接