NameError: имя 'exit' не определено

Я использовал cxfreeze для создания исполняемого файла Windows из planrequest.py. Кажется, что все работает нормально, но когда я запускаю exe файл, я получаю NameError: name 'exit' is not defined

Вывод имени не определен в состояниях python, что исправление должно использовать import sys. Однако я использую import sys. Код отлично работает как скрипт python (как, в я, я тщательно тестировал аргументы командной строки перед компиляцией в исполняемый файл.)

import socket
import sys

if len(sys.argv) == 1:
    print("Usage:")
    print("PlanRequest [Request String] [Server IP (optional: assumes 127.0.0.1 if omitted)]")
    exit()

#[do stuff with the request]

Ответ 1

Импортировать sys будет недостаточно, чтобы сделать exit реального времени в глобальном масштабе.

Вам либо нужно сделать

from sys import exit
exit()

или

import sys
sys.exit()

Обратите внимание, что, поскольку вы также используете argv, в первом случае вы должны сделать from sys import argv,exit

Ответ 2

Вы должны применить функцию к sys:

from sys import exit
exit()

потому что exit - это сама функция, вам нужно вызвать ее с помощью ()