menu - 如何打破 Python 上的循环菜单
问题描述
我在为快餐制作 ecounter 时遇到了一点问题,问题在于继续订购。我不知道如何在python中使用True和False。我选择三种食物作为初学者。它最终失败了。所以我尝试通过复制其他人的代码来使用 True。起初代码是成功的,但是当我在代码中更改一些小东西时,它出错了,我不知道如何修复它。
到目前为止,这是我的代码:
hcount = 0
scount = 0
fcount = 0
y = True
n = False
cstm= input("Please enter your name: ")
print(" ")
print(" ")
print("Hi MR/MS " + cstm)
print("WELCOME TO MACDUNNO ECOUNTER")
print("CHOOSE YOUR FOOD")
while True:
print(" ")
print('MENU MAC DUNNO')
print("1. HAMBURGER = $1.50")
print("2. SODA = $1.15")
print("3. FRIES = $1.25")
choice = int(input('ENTER NUMBER 1-3: '))
if choice == 1:
amount = int(input("ENTER THE AMOUNT: "))
hcount += amount
elif choice == 2:
amount = int(input("ENTER THE AMOUNT: "))
scount += amount
elif choice == 3:
amount = int(input("ENTER THE AMOUNT: "))
fcount += amount
countinue = input("ARE YOU STILL WANT TO ORDER? (y/n)")
if countinue == n:
sub = (hcount * 1.50) + (scount * 1.15) + (fcount * 1.25)
tax = sub * 0.09
total = sub + tax
print(" ")
print(" ")
print("************")
print("PAYMENT")
print("************")
print('TOTAL HAMBURGER: {0}'.format(hcount))
print('TOTAL SODA: {0}'.format(scount))
print('TOTAL FRIES: {0}'.format(fcount))
print(" ")
print('SUBTOTAL: {:0.2f}'.format(sub))
print('TAX : {:0.2f}'.format(tax))
print(" ")
print("__________________________________")
print('TOTAL: {:0.2f}'.format(total))
print(" ")
pay =int(input("INSERT PAYMENT:"))
if pay > total :
exchange = pay - total
print(' ')
print(' ')
print('EXCHANGE : {:0.2f}'.format(exchange))
print("THANK YOU, PLEASE COME AGAIN")
import time
time.sleep(5)
else:
print(' ')
print(' ')
print("INSUFFICIENT AMOUNT")
print("PLEASE INSERT THE RIGHT AMOUNT")
scpay = int(input("INSERT PAYMENT : "))
if scpay > total :
exchange = scpay - total
print(' ')
print(' ')
print('EXCHANGE : {:0.2f}'.format(exchange))
print("THANK YOU, PLEASE COME AGAIN")
import time
time.sleep(5)
else:
print(" ")
print("ORDER TERMINATED")
import time
time.sleep(5)
解决方案
当排序发生时,您需要将另一个变量保留为 True,然后在每个可能的中断或结束订单的每个可能选项时,您必须使变量为 False。
例子
ordering = True
while ordering:
.
.
ordering = False
print("THANK YOU, PLEASE COME AGAIN")
import time
time.sleep(5)
推荐阅读
- http-live-streaming - SRS how enable HTTPS for HLS stream?
- amazon-web-services - 将对象放入另一个帐户的 S3 存储桶
- java - 在具有重复项的排序列表中查找第一次出现的整数
- typescript - Typescript - 延迟指定泛型类型直到调用函数
- c# - Calling PHP class in C#
- mysql - read Statement not working in Linux script
- javascript - 如何在传单 React 中查找纬度/经度属性
- php - echo session variable on ajax post call
- javascript - React Native AWS Amplify AuthError : Amplify has not been configured correctly
- angular - sharing data between two routes angular