.exe файл не открывается. input стоит в конце
с помощью pyinstaller сделал в консоле pyinstaller main.py и после открытия .exe файла он сразу закрывается. Причина - не известна. Как вы видите в конце стоит input() и всё равно ничего не помогает. Заранее спасибо. Код:
import sys,time
print("Хотите начать игру? ")
A = input()
print()
QUEST = {
"intro" : ("""
Я видел какой-то сон, кто-то тянулся к синему кристалу
Потом стало темно
Мне кажется я здесь не один...
S.T.A.L.K.E.R
""", "goto", "meet_vadim"
),
"meet_vadim" : ("""
\tВадим: Мда, интересно как тебя сюда занесло
""", "question", {"Где я?" : "vadik1"}
),
"vadik1" : ("""
\tВадим: Ты в Зоне. Как тебя звать?
""", "question", {"В какой зоне?" : "vadik2",
"А как тебя?" : "vadik3",
"Я не помню своего имени.": "vadik4"}
),
"vadik2" : ("""
\tВадим: Всмысле в какой? В Зоне Очуждения.
""", "question", {"В ЗОНЕ ОЧУЖДЕНИЯ?!" : "vadik5"}
),
"vadik3" : ("""
\tВадим: Вадим.
""", "question", {"Приятно позакомится." : "vadik6"}
),
"vadik4" : ("""
\tВадим: Мда, плохи дела. Ну нечего, следуй за мной.
\t Я покажу тебе дорогу в уромное местечко. Отсюда недалеко.
""", "question", {"Ну пойдём." : "vadik7"}
),
"vadik5" : ("""
\tВадим: Ну да.
""", "question", {"Во попал!" : "vadik8"}
),
"vadik6" : ("""
\tВадим: Так как тебя зовут?
""", "question", {"Не помню!" : "vadik9",
"Я помню только 3 первых буквы 'Бро...'" : "vadik11"}
),
"vadik7" : ("""
\tВадим: Следуй за мной.
""", "action", {"Следовать за Вадиком" : "go_vadik",
"Поговорить" : "speak_vadik"}
),
"vadik8" : ("""
\tВадим: Пошли за мной. Покажу укромное местечко.
""", "question", {"Ну пойдём" : "vadik_go_act"}
),
"vadik9" : ("""
\tВадим: Какой-то ты раздражительный.
""", "question", {"А ты как думал? Голова пухнет, нечего не помню." : "vadik12",
"...." : "vadik13"}
),
"vadik_go_act" : ("""
""", "action", {"Следовать за Вадиком" : "go_vadik",
"Поговорить" : "speak_vadik"}
),
"vadik11" : ("""
\tВадим: Сочувствую. Ну ладно. Пойдём за мной, я знаю место где можно отдохнуть.
\t Может и имя своё вспомнишь.
""", "question", {"Ну пойдём" : "vadik_go_act"}
),
"vadik12" : ("""
\tВадим: Ну ладно. Пойдём за мной, я знаю место где можно отдохнуть.
""", "question", {"Пойдём" : "vadik_go_act"}
),
"vadik13" : ("""
\tВадим: Пойдём за мной, я знаю место где можно отдохнуть.
""", "question", {"Пошли" : "vadik_go_act"}
),
"go_vadik" : ("""
Все ушли в закат.
""", "goto", "outro"
),
"speak_vadik" : ("""
Вы попытались заговорить с Вадимом, но тут яркая вспышка озарила небо.
""", "goto", "outro"
),
"outro" : ("""
КОНЕЦ.
""", "exit", ""
)
}
def slow_print(str):
for letter in str + '\n':
sys.stdout.write(letter)
sys.stdout.flush()
time.sleep(3./90)
print()
def go(quest, stage="intro"):
while True:
text, type, action = quest[stage]
slow_print(text.lstrip("\n"))
if type == "goto":
stage = action
time.sleep(1)
elif type in ("question", "action"):
while True:
time.sleep(0.5)
print(f"/// Выберете {'ответ' if type == 'question' else 'действие'} ({'/'.join(map(str, range(1, len(action)+1)))}) ///")
variants = list(action.items())
for i, question in enumerate(variants, 1):
print(f"/// {i}. {question[0]}")
answer = input()
if answer.isdigit():
answer = int(answer)
if 0 < answer <= len(action):
if type == "question":
slow_print(f"\tВы: {variants[answer-1][0]}")
stage = variants[answer-1][1]
break
print("Ваш ответ не ясен. Повторите.")
elif type == "exit":
return
go(QUEST)
input()
Ответы (1 шт):
Автор решения: sigalgleb
→ Ссылка
Попробуйте установить pyinstaller предыдущей версии:
pip install pyinstaller==4.5
Создайте .exe стандартным способом
pyinstaller main.py
Откройте полученный результат в папке dist:
