python - 如何打印由函数输出组成的列表
问题描述
以下代码是一个快餐菜单,在用户完全选择一个选项后,它会存储在 Order 列表中。订单完成后,我想打印订单列表以显示用户订购的内容,即:奶酪汉堡。
但相反,它正在输出:< main .Burger object at 0x0000027BB1221490>
def user_input_burger():
bur = input("What burger would you like?: 1. Beef 2. Chicken")
while True:
if bur.lower() == "1" or bur.lower() == "beef":
toppings = input("What toppings would you like?: 1. Cheese 2. No Cheese")
while toppings.lower() not in ["cheese", "no cheese", "1", "2"]:
print("Invalid selection")
toppings = input("What toppings would you like?: 1. Cheese 2. No Cheese")
b = Burger(bur.lower(), toppings.lower())
if toppings.lower() == "c":
print("Order Cancelled")
b = 1
elif bur.lower() == "c":
print("Order Cancelled")
b = 1
return b
def take_order():
Order = []
print("Welcome to Burger Shop!")
user = input("Enter your name: ")
print("Hello" + " " + user + ". " + "Enter c to cancel order at any time.")
go = 0
burgers = input("Would you like a burger? (Y/N): ")
while burgers.lower() != "n" and go == 0:
if burgers.lower() not in ["y", "n", "c"]:
print("Invalid selection")
burgers = input("Would you like a burger? (Y/N): ")
elif burgers.lower() == "y":
t = user_input_burger()
Order.append(t)
if t==1:
go = 1
else:
burgers=input("Would you like another burger? (Y/N): ")
elif burgers.lower() == "n":
break
else:
print("Order Cancelled")
break
for i in Order:
print(i)
take_order()
解决方案
首先你设置
b = Burger(bur.lower(), toppings.lower())
如果浇头是“c”,则将其设置为 1。
让你开始吧。那里还有其他错误,但这是主要错误。
推荐阅读
- java - 如何获取通过在工作目录中设置文件名来实例化的文件的 File.getParent()?
- python - 将dict打印为表格数据
- python - Python - 从逆向获取特定字符后的字符串
- reactjs - 如何在 SPA(react)应用程序中管理(存储)JWT 以处理身份验证后的后续请求
- vb.net - 我在理解我正在查看的这段代码时遇到问题
- html - 应该使用什么标签来包含多个 th 元素
- azure - 如何获取刚刚复制到 Azure 存储帐户的 CloudBlockBlob 的大小?
- mysql - 如何显示从两列过滤的多个值
- arrays - HLSL:我不能在顶点程序中修改统一变量吗?(数组)
- git - Visual Studio 2017 中的樱桃选择提交方法之间的区别