У меня есть скрипт, состоящий из 3 файлов и 2 пакетов. Когда я запускаю скрипт в IDLE или через командную строку, он выполняется отлично. Я использовал cx_freeze для преобразования программы в исполняемый файл, и она по-прежнему работает нормально, за исключением того, что текст, полученный с помощью метода input(), оценивается неправильно. Этот код отражает мой собственный:
x = str(input("Continue? (y/n): "))
if x.lower() == "y" or x.lower() == "yes":
cont = True
else:
print("thanks for playing.")
cont = False
input("press enter key to exit...")
Я добавил преобразователь str() в функцию ввода, чтобы посмотреть, поможет ли это, но это не помогло. Независимо от того, набираю ли я «да» или «у», условное выражение все равно оценивается как ложное, и я понятия не имею, почему. Я также добавил операторы печати в каждую ветвь условного оператора, и значение, напечатанное для x, правильное, но все равно оценивается как ложное.
x = input("Continue? ").strip()
? - person Thomas K   schedule 22.05.2012