You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python列表append后为空求助:披萨配料添加代码问题排查

问题排查:披萨配料列表为空的原因

你的代码里每次添加完配料后都执行了toppinglist = [],这直接清空了刚添加的内容,才是导致最后打印列表为空的根本原因,和append()方法的使用无关。

看这段逻辑:当你用toppinglist.append(requestedtopping)把用户选的配料加入列表后,立刻执行toppinglist = []重置列表为空。哪怕用户多次选择配料,每次循环都会清空之前的内容,最后跳出循环时列表自然是空的。

修正后的代码

移除那句清空列表的语句即可:

toppinglist = []
instock = ['Cheese', 'Tomato', 'Chicken', 'Mushroom']
Outofstock = ['Beef', 'Pork', 'Onions']
wanttoppings_q = input('Do you want toppings on your pizza? Yes/No')
wanttoppings_q = wanttoppings_q.title()
while wanttoppings_q == 'Yes':
    requestedtopping = input('Enter One Topping:')
    toppinglist.append(requestedtopping)
    anythingelse = input('Anything Else? Yes/No' )
    anythingelse = anythingelse.title()
    # 删掉清空列表的语句
    if anythingelse == 'No':
        break

print(toppinglist)

额外优化建议(可选)

你还可以加入配料库存判断,避免用户选择缺货的配料,比如:

requestedtopping = input('Enter One Topping:').title()
if requestedtopping in instock:
    toppinglist.append(requestedtopping)
elif requestedtopping in Outofstock:
    print(f"Sorry, {requestedtopping} is out of stock.")
else:
    print(f"Sorry, we don't have {requestedtopping}.")

内容的提问来源于stack exchange,提问作者Hez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 18:45:11