Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 生成成功,但exe立即关闭_Python 3.x_Build_Exe_Executable_Pyinstaller - Fatal编程技术网

Python 3.x 生成成功,但exe立即关闭

Python 3.x 生成成功,但exe立即关闭,python-3.x,build,exe,executable,pyinstaller,Python 3.x,Build,Exe,Executable,Pyinstaller,我制作了一个脚本,我想将其转换为executabel,我使用的是bdist_msi,但它在生成时没有错误,在运行exe时崩溃 错误: PS C:\Users\Guilherme Mendes\Documents\Projetos\Trello api\Source\build\exe.win-amd64-3.6> .\teste.exe Traceback (most recent call last): File "C:\Users\Guilherme Mendes\AppData\Lo

我制作了一个脚本,我想将其转换为executabel,我使用的是bdist_msi,但它在生成时没有错误,在运行exe时崩溃

错误:

PS C:\Users\Guilherme Mendes\Documents\Projetos\Trello api\Source\build\exe.win-amd64-3.6> .\teste.exe
Traceback (most recent call last):
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run
module.run()
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\cx_Freeze\initscripts\Console.py", line 26, in run
exec(code, m.__dict__)
File "teste.py", line 1, in <module>
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\trello\__init__.py", line 11, in <module>
from trello.trelloclient import *
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\trello\trelloclient.py", line 4, in <module>
import requests
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\requests\__init__.py", line 43, in <module>
import urllib3
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\urllib3\__init__.py", line 8, in <module>
from .connectionpool import (
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\urllib3\connectionpool.py", line 28, in <module>
from .packages.six.moves import queue
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\urllib3\packages\six.py", line 92, in __get__
result = self._resolve()
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\urllib3\packages\six.py", line 115, in _resolve
return _import_module(self.mod)
File "C:\Users\Guilherme Mendes\AppData\Local\conda\conda\envs\virtualconda\lib\site-packages\urllib3\packages\six.py", line 82, in _import_module
__import__(name)
ModuleNotFoundError: No module named 'queue'

我尝试过其他工具,如py2exe和pyinstaller,但都出现了相同的情况。

队列模块在Python3中被重命名为队列。但在这两个Python版本中,它都包含在Python标准库中。所以,我不认为这个错误是由模块丢失引起的。你在用Python2吗?如果是这样,您正在使用的模块在Python2中命名为“queue”时可能正在尝试“导入队列”。您使用的是哪一版本的Python?我使用的是Python 3.6.5。我尝试了“从urllib3.connectionpool.packages.six.moves导入队列”,但出现了一个错误,说urllib3.connectionpool不是库。忽略我的最后一条注释--我可能会删除它。Six是一个python包,用于处理python版本之间的兼容性问题。因此,对于我来说,建议错误可能是由使用错误的包名引起的是不相关的。cx_Freeze查找队列模块的方式一定有问题。是否尝试将“队列”包含在setup.py文件的包列表中?如果cx\u Freeze太麻烦,我也可以帮助你使用Pyinstaller来构建它。哦,太棒了!如果您遇到进一步的导入程序和模块发现错误,请告诉我。我已经使用Pyinstaller很多次了。Pyinstaller也很棒,因为它几乎为所有主要的Python库都提供了钩子——这使它可以轻松地包含它们,而无需大惊小怪。但是,听起来你已经把一切都弄明白了。
import sys
from cx_Freeze import setup, Executable

base = None

executables = [
        Executable("teste.py", base=base)
]

buildOptions = dict(
        packages = ['xlsxwriter', 'iso8601', 'datetime', 'smtplib', 'time', 'os', 'trello', 'email.message'],
        includes = [],
        include_files = ['Parametros.txt', 'Base de Dados.xlsx', 'Cronograma de Servicos.xlsm'],
        excludes = []
)

setup(
    name = "Painel de Serviços",
    version = "2.0",
    description = "Painel de Exibição de agendamentos realizados no Trello",
    options = dict(build_exe = buildOptions),
    executables = executables
 )