利用python实现收银系统,利用字典与文本文件,要求每个商品拥有编号,售出商品时通过输入编号的方式实现,计算价格时用编号乘数量
时间: 2024-03-17 18:44:40 浏览: 100
好的,这是一个比较简单的收银系统,我们可以通过 Python 的字典和文件操作来实现。首先,我们需要一个文本文件来存储商品的信息,例如:
```
1,apple,5.0
2,banana,3.0
3,orange,4.0
```
每行代表一个商品,包含三个字段,分别是商品编号、商品名称和商品价格。接下来,我们可以通过 Python 的文件操作将这些信息读入到一个字典中,字典的键是商品编号,值是一个包含商品名称和价格的元组。代码如下:
```python
# 读取商品信息
inventory = {}
with open('inventory.txt', 'r') as f:
for line in f:
id, name, price = line.strip().split(',')
inventory[id] = (name, float(price))
```
接下来,我们可以编写一个函数来实现收银功能,根据用户输入的商品编号和数量计算总价并输出。代码如下:
```python
# 实现收银功能
def cashier():
total = 0.0
while True:
id = input("请输入商品编号:")
if id == "":
break
if id not in inventory:
print("该商品不存在")
continue
name, price = inventory[id]
count = int(input("请输入购买数量:"))
total += price * count
print(f"已加入购物车:{name} x {count}")
print(f"总价为:{total:.2f}")
```
最后,我们可以调用 cashier 函数来启动收银系统:
```python
cashier()
```
这样就可以实现一个简单的收银系统了。需要注意的是,这个示例程序并没有进行输入合法性检查和异常处理,实际使用时需要根据具体情况进行改进。
阅读全文