cx_Freeze преобразовал exe: окно закрывается сразу

Я пытаюсь просто конвертировать Pygame Python Py в файл.exe с помощью cx_Freeze. Файл установки выполняется правильно и без ошибок, но проблема в том, что когда я запускаю свой.exe-файл, окно консоли (черное окно, похожее на cmd) открывается быстро и закрывается. Мой.py, который я хочу преобразовать, называется Salary.py, и в него включены коды.input('str'), чтобы пользователь мог решить, какой CSV-файл он хочет использовать. Описание моего Salary.py: если пользователь вводит целое число, Salary.py помогает ему проанализировать один существующий CSV-файл, запустить скрипт и вывести его в другой CSV-файл. Китайский включен в код. Еще раз, нет ошибки при запуске Salary.py в python3.6, и нет ошибки при создании exe-файла.

Setup.py Я использую:

from cx_Freeze import setup, Executable
import os

os.environ['TCL_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
setup(name='Salary',
      version='0.1',
      description='Salarycount',
      executables= [Executable("Salary.py")])

Я пытаюсь выполнить Salary.exe в cmd. И это дало мне это:

Traceback (most recent call last):
  File "D:\Anaconda3\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run
    module.run()
  File "D:\Anaconda3\lib\site-packages\cx_Freeze\initscripts\Console.py", line 26, in run
    exec(code, m.__dict__)
  File "Salary.py", line 8, in <module>
  File "D:\Anaconda3\lib\site-packages\pandas\__init__.py", line 19, in <module>
"Missing required dependencies {0}".format(missing_dependencies))
ImportError: Missing required dependencies ['numpy']

Похоже, numpy уже установлен в мои пакеты Python, я даже не знаю, что это значит. мое окружение: Anaconda 3 python 3.6 cx-Freeze 6.0b1

1 ответ

Похоже, что ваш скрипт Salary.py использует pandas пакет, это правильно? pandas пакет требует numpy пакет для работы, и нужно явно указать cx_Freeze, чтобы включить numpy пакет. Попробуйте добавить следующее options в setup:

from cx_Freeze import setup, Executable
import os

os.environ['TCL_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
setup(name='Salary',
      version='0.1',
      description='Salarycount',
      options={'build_exe': {'packages': ['numpy']}},
      executables= [Executable("Salary.py")])
Другие вопросы по тегам