Python 3.x 为什么可以';我不能在cx\U冻结中创建线程池吗? 回溯(最近一次呼叫最后一次): 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\cx\u Freeze\initscripts\uuuuuu startup\uuuuu.py”,第14行,正在运行 module.run() 文件“C:\Users\Jun\AppData\Local\Programs\Python35\lib\site packages\cx\u Freeze\initscripts\Console.py”,第26行,正在运行 执行官(代码、指令) 文件“D:/ruanjian/new/Ui-design/hand_-up_625.py”,第25行,in 从keras.models导入负载_模型 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\keras\\uuuuuu init\uuuuuu.py”,第3行,在 从…起导入UTIL 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\keras\utils\ \uuuuu init\uuuu.py”,第4行,在 从…起导入数据工具 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\keras\utils\data\u utils.py”,第19行,在 从multiprocessing.pool导入线程池 ImportError:没有名为“multiprocessing.pool”的模块

Python 3.x 为什么可以';我不能在cx\U冻结中创建线程池吗? 回溯(最近一次呼叫最后一次): 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\cx\u Freeze\initscripts\uuuuuu startup\uuuuu.py”,第14行,正在运行 module.run() 文件“C:\Users\Jun\AppData\Local\Programs\Python35\lib\site packages\cx\u Freeze\initscripts\Console.py”,第26行,正在运行 执行官(代码、指令) 文件“D:/ruanjian/new/Ui-design/hand_-up_625.py”,第25行,in 从keras.models导入负载_模型 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\keras\\uuuuuu init\uuuuuu.py”,第3行,在 从…起导入UTIL 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\keras\utils\ \uuuuu init\uuuu.py”,第4行,在 从…起导入数据工具 文件“C:\Users\Jun\AppData\Local\Programs\Python\35\lib\site packages\keras\utils\data\u utils.py”,第19行,在 从multiprocessing.pool导入线程池 ImportError:没有名为“multiprocessing.pool”的模块,python-3.x,keras,python-multiprocessing,cx-freeze,Python 3.x,Keras,Python Multiprocessing,Cx Freeze,首先,看起来您缺少了可以通过pip获得的 第二,不包括线程池。如果您想要一个进程池,您需要: Traceback (most recent call last): File "C:\Users\Jun\AppData\Local\Programs\Python\Python35\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run module.run() File "C:\User

首先,看起来您缺少了可以通过pip获得的

第二,不包括线程池。如果您想要一个进程池,您需要:

Traceback (most recent call last):

  File "C:\Users\Jun\AppData\Local\Programs\Python\Python35\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run

    module.run()

  File "C:\Users\Jun\AppData\Local\Programs\Python\Python35\lib\site-packages\cx_Freeze\initscripts\Console.py", line 26, in run

    exec(code, m.__dict__)

  File "D:/ruanjian/new/Ui-Disign/hand_up_625.py", line 25, in <module>

    from keras.models import load_model

  File "C:\Users\Jun\AppData\Local\Programs\Python\Python35\lib\site-packages\keras\__init__.py", line 3, in <module>

    from . import utils

  File "C:\Users\Jun\AppData\Local\Programs\Python\Python35\lib\site-packages\keras\utils\__init__.py", line 4, in <module>

    from . import data_utils

  File "C:\Users\Jun\AppData\Local\Programs\Python\Python35\lib\site-packages\keras\utils\data_utils.py", line 19, in <module>

    from multiprocessing.pool import ThreadPool

ImportError: No module named 'multiprocessing.pool'

尝试将
'multiprocessing'
添加到
setup.py
脚本中的
build\u exe\u选项的
列表中:

build_exe_options={“packages”:['multiprocessing']}
# ...
安装程序(名称=…,#完成!
...
选项={“build_exe”:build_exe_options},
可执行文件=[可执行文件(…)])
有关更多详细信息,请参阅cx_冻结

请注意,您必须调用
multiprocessing.freeze\u support()
,以便冻结的脚本继续使用多处理。根据报告:

添加对使用多处理的程序被冻结以生成Windows可执行文件时的支持。(已通过py2exePyInstallercx\u-Freeze测试)

需要在主模块的
行之后直接调用此函数。例如:

来自多处理导入过程的
,冻结\u支持
def():
打印(“你好,世界!”)
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
冻结支持()
进程(目标=f).start()
如果省略了
freeze\u support()
行,则尝试运行冻结的可执行文件将引发RuntimeError

在Windows以外的任何操作系统上调用
freeze\u support()
都无效。此外,如果该模块在Windows上由Python解释器正常运行(程序尚未冻结),则
freeze\u support()
无效


现在的问题是关于导入错误,没有名为“multiprocessing.pool”的模块。cx_冻结找不到模块:'multiprocessing.pool',我需要生成一个可执行文件(.exe)。代码可以完全运行,但在我使用cx\U Freeze生成可执行文件时出现了导入错误,但我确实在MultiProcessing中找到了pool.py。听起来cx\U Freeze没有看到该库——有关包含/包的解决方案是否有帮助?
 class multiprocessing.pool.Pool([processes[, initializer[, initargs[, maxtasksperchild[, context]]]]])