python3基础写的水果销售系统

 

初始化源码 : sale_system_prepare.py

#!/usr/bin/python
# -*- coding: utf-8 -*-

import json


def write_json(file_name):
    stocklist = {
        '苹果': 10,
        '香蕉': 10,
        '雪梨': 10,
    }
    with open(file_name, 'w', encoding='utf-8') as ob:
        # 解决存入中文乱码ensure_ascii=False
        json.dump(stocklist, ob, ensure_ascii=False)


if __name__ == '__main__':
    file_name = 'stock.json'
    write_json(file_name)

 

核心代码:sale system.py

#!/usr/bin/python
# -*- coding: utf-8 -*-


import json
from sale_system_prepare import write_json

# 数据初始化
file_name = 'stock.json'
write_json(file_name)

print('欢迎来到英俊杂货店')

# 读取数据
with open(file_name, 'r', encoding='utf-8') as ob:
    fruits = json.load(ob)
    print("名称" + "\t" + "数量")
    fruits = dict(fruits)
    for k, v in fruits.items():
        print(k + '\t' + str(v))

    while True:
        # 买的水果种类
        print("输入‘q'可以退出")
        fruit_list = []
        for k, v in fruits.items():
            fruit_list.append(k)
        fruit_list = str(fruit_list)
        fruit_name = input('输入要购买的水果,可选择' + fruit_list)
        if fruit_name == 'q':
            print("欢迎下次再来")
            break
        # 只有购买的水果名字在清单上时
        elif fruit_name in fruits.keys():
            # 买的数量
            while True:
                fruit_num = input('输入要购买的数量1-10:')
                if fruit_num.isdigit():
                    # 输入只有数字
                    if int(fruit_num) < 1 or int(fruit_num) > 10:
                        print('请输入数字1-10')
                        continue
                    elif 0 < int(fruit_num) <= 10:
                        print("你已购买" + str(fruit_num) + "个" + fruit_name)
                        # 更新水果数量
                        old_fruit_num = int(fruits[fruit_name])
                        new_fruit_num = old_fruit_num - int(fruit_num)
                        fruits[fruit_name] = new_fruit_num
                        print(fruit_name+"还剩: " + str(new_fruit_num) + ' 个')
                        if new_fruit_num == 0:
                            print(fruit_name + ' 已售罄')
                            # fruits[fruit_name] = '已售罄'
                            del fruits[fruit_name]
                        break
                else:
                    # 输入不是纯数字
                    if fruit_num == 'q':
                        break
                    else:
                        print('请只输入数字')
                        continue
        else:
            print('本店暂时没有叫' + fruit_name + '的水果')
            continue
print("本店剩余")
print("名称" + "\t" + "数量")
fruits = dict(fruits)
for k, v in fruits.items():
    print(k + '\t' + str(v))
# 提交数据
with open(file_name, 'w', encoding='utf-8') as ob:
    # 解决存入中文乱码ensure_ascii=False
    json.dump(fruits, ob, ensure_ascii=False)

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一身正气z

打赏随心就好

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值