python编写自动售货机
时间: 2023-10-17 21:22:25 浏览: 182
编写一个程序模拟自动售货机
好的,以下是一个简单的自动售货机的 Python 代码示例:
```python
# 定义货物清单和价格
items = {
"可乐": 3,
"雪碧": 2,
"绿茶": 4,
"红茶": 4,
"薯片": 2,
"巧克力": 3
}
# 定义初始余额
balance = 0
# 展示货物清单和余额
print("欢迎使用自动售货机")
print("以下是我们提供的货物:")
for item, price in items.items():
print(f"{item}: {price}元")
print(f"您当前的余额为{balance}元")
# 用户投入硬币/纸币
while True:
coin = input("请投入硬币/纸币(1元, 5元, 10元, 20元, 50元)或输入 q 结束:")
if coin == "q":
break
elif coin not in ["1", "5", "10", "20", "50"]:
print("无效的硬币/纸币,请重新投入")
continue
balance += int(coin)
print(f"您当前的余额为{balance}元")
# 用户购买货物
while True:
item = input("请输入要购买的货物名称或输入 q 结束:")
if item == "q":
break
elif item not in items:
print("无效的货物名称,请重新输入")
continue
if balance < items[item]:
print("余额不足,请先投入足够的硬币/纸币")
continue
balance -= items[item]
print(f"购买成功,您当前的余额为{balance}元")
# 完成购物,退还余额
print(f"感谢使用自动售货机,您的余额为{balance}元,退还中...")
while balance > 0:
if balance >= 50:
print("50元")
balance -= 50
elif balance >= 20:
print("20元")
balance -= 20
elif balance >= 10:
print("10元")
balance -= 10
elif balance >= 5:
print("5元")
balance -= 5
else:
print("1元")
balance -= 1
print("退还完成,欢迎再次光临!")
```
该代码实现了以下功能:
1. 展示货物清单和余额;
2. 用户可以投入硬币/纸币,直到选择结束;
3. 用户可以购买货物,直到选择结束或余额不足;
4. 用户完成购物后,退还余额。
注意:上述代码只是一个简单示例,可能存在不足之处,如需在实际应用中使用,还需要根据实际需要进行修改和完善。
阅读全文