В Python 3.2 я пишу основную программу меню, и когда вводится опция quit, функция не заканчивается. Когда выбрано quit, он завершает цикл, в котором находится остальная часть скрипта, и должен прекратить выполнение скрипта, но по какой-либо причине это не так? Я пропустил функцию «конец», которая убивает скрипт, или новая оболочка Python просто глючит? Довольно уверен, что это не было необходимо в Python 2.7.Завершение скрипта Python
import random
choice = str(input("\nMenu:\n(I)nstructions\n(C)alculate blah\n(Q)uit\n>>>"))
while choice != "q" or choice != "Q":
while choice != "i" and choice != "I" and choice != "c" and choice != "C" and choice != "q" and choice != "Q":
print("Invalid menu choice.")
choice = str(input("\nMenu:\n(I)nstructions\n(C)alculate blah\n(Q)uit\n>>>"))
if choice == "i" or choice == "I":
print("blahblah.")
choice = str(input("\nMenu:\n(I)nstructions\n(C)alculate blah\n(Q)uit\n>>>"))
if choice == "c" or choice == "C":
x = int(input("Please enter the number of x: "))
while x < 0:
x = int(input("Please enter the number of x: "))
y = int(input("Please enter the number of y: "))
while y < 0:
y = int(input("Please enter the number of y: "))
z = str(input("blah (B) or (P) z?: "))
while z != "b" and z != "p" and z != "B" and z != "P":
z = str(input("blah (B) or (P) z?: "))
if z == "b" or z == "B":
total = x*10 + y*6 + 0
print("blah $", total, " blah ", x, " x and ", y, " y. blah!")
#function that outputs the cost of premium z
if z == "p" or z == "P":
luck = random.randrange(1, 11, 1)
if luck == 10:
total = x*10 + y*6
print("\nblah$", total, " blah z for ", x, " x and ", y, " y. blah!")
#below is the normal function, for when the customer is not a lucky winner
if luck != 10:
total = x*12.50 + y*7.50
print("blah $", total, " blah ", x, " x and ", y, " y. blah!")
choice = str(input("\nMenu:\n(I)nstructions\n(C)alculate\n(Q)uit\n>>>"))
Ничто не может сказать, не видя код. – bereal
Если вы хотите, чтобы скрипт вышел, вы можете использовать 'sys.exit (0)', но да, покажите код, если вы хотите получить более конкретную помощь. –
pastebin.com/Ww4auw7E Я не мог думать о загружаемом веб-сайте, которому я мог бы доверять, но вот пародия кода. Это ничего сложного, просто пытается понять, что здесь происходит. – Epidemic