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
- это сама функция, вам нужно вызвать ее с помощью ()