鱼C论坛

 找回密码
 立即注册
查看: 1751|回复: 10

[作品展示] 用python做一个超超超简陋的商品管理系统

[复制链接]
发表于 2023-7-23 13:04:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
商品管理系统


我用python制作了一个简单商品管理系统



商品信息会储存在同目录下的“商品信息.txt”文件中,如果没有这个文件就会自己创建一个文件



下面看代码:



  1. """
  2. 商品信息系统的改进版

  3. """

  4. # 导入模块
  5. import time

  6. # 函数
  7. def del_goods():
  8.     goods = input("请输入需要删除的商品名称:")
  9.     if goods in data.keys():
  10.         if input(f"{goods}\t{data[goods][0]}\t{data[goods][1]}\n是否需要删除(是/否):") == "是":
  11.             data.pop(goods)
  12.             print("已删除该商品!")
  13.     else:
  14.         print("没有该商品!")
  15.         
  16. def add_goods():
  17.     goods = input("请输入需要添加的商品名称:")
  18.     if goods in data.keys():
  19.         print(f"该商品已添加:\n{goods}\t{data[goods][0]}\t{data[goods][1]}")
  20.     else:
  21.         price = eval(input("请输入售价:"))
  22.         goods_num = eval(input("请输入库存:"))
  23.         data[goods] = [price, goods_num]
  24.         print(f"{goods}\t{data[goods][0]}\t{data[goods][1]}\n已添加该商品!")
  25.         
  26. def sale_goods():
  27.     goods = input("请输入需要出售的商品名称:")
  28.     if goods in data.keys():
  29.         while 1:
  30.             print(f"{goods}\t{data[goods][0]}\t{data[goods][1]}")
  31.             if data[goods][1] == 0:
  32.                 print(f"{goods}数量不足!")
  33.                 time.sleep(1.5)
  34.                 break
  35.             goods_num = eval(input("请输入想要出售的数量:"))
  36.             if goods_num <= data[goods][1]:
  37.                 data[goods][1] -= goods_num
  38.                 print(f"已出售{goods_num}个,仓库剩余{data[goods][1]}个")
  39.                 break
  40.             else:
  41.                 print(f"货物数量不足,仓库中剩余{data[goods][1]}个")
  42.                 if data[goods][1] == 0:
  43.                     break
  44.                 continue
  45.     else:
  46.         print("没有该商品")
  47.         
  48. def show_goods():
  49.     print("============正在展示商品==============")
  50.     l = 5
  51.     for i in data.keys():
  52.         i = len(i)
  53.         l = i if i > l else l
  54.     space = " "*(l-2)*2
  55.     space = space.replace("        ","\t")
  56.     print(f"商品{space}\t售价\t库存\t")
  57.     for i in data.keys():
  58.         space = " "*(l-len(i))*2
  59.         space = space.replace("        ","\t")
  60.         print(f"{i}{space}\t{data[i][0]}\t{data[i][1]}")
  61.     print("=====================================")
  62.     time.sleep(1)
  63.    
  64. def excit():
  65.     print("正在退出......")
  66.     with open("商品信息.txt","w",encoding="utf-8") as f:
  67.         f.write("商品,售价,库存\n")
  68.         for i in data.keys():
  69.             f.write(f"{i},{data[i][0]},{data[i][1]}\n")
  70.     print("推出成功!欢迎下次再来!")
  71.    

  72. # 建立空字典
  73. data = {}

  74. # 解压txt文件到空字典
  75. try:
  76.     with open(r"商品信息.txt","r",encoding="utf-8") as f:
  77.         f.readline()
  78.         for i in f.readlines():
  79.             i = i[:-1].split(",")
  80.             data[i[0]] = [eval(i[1]),eval(i[2])]
  81. except:
  82.     with open(r"商品信息.txt","w",encoding="utf-8") as f:
  83.         pass
  84. # 主循环
  85. print("============商品信息系统==============")
  86. time.sleep(1)
  87. while 1:
  88.     print("==============操作指引================\n",
  89.           "\t·删除商品请输入‘删除’\n",
  90.           "\t·添加商品请输入‘添加’\n",
  91.           "\t·出售商品请输入‘出售’\n",
  92.           "\t·展示商品请输入‘展示’\n",
  93.           "\t·退出请输入‘退出’\n")
  94.     opts = input("请输入:")
  95.     if opts == "删除":
  96.         del_goods()
  97.     elif opts == "添加":
  98.         add_goods()
  99.     elif opts == "出售":
  100.         sale_goods()
  101.     elif opts == "展示":
  102.         show_goods()
  103.     elif opts == "退出":
  104.         excit()
  105.         break
  106.     else:
  107.         print("请按照指示输入!")
  108.         time.sleep(1.5)

复制代码



新人作者!求评分


评分

参与人数 2荣誉 +10 贡献 +6 收起 理由
cjjJasonchen + 5 + 3 鱼C有你更精彩^_^
歌者文明清理员 + 5 + 3

查看全部评分

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-7-23 13:16:00 | 显示全部楼层
小号?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-7-23 13:20:42 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-23 13:21:35 | 显示全部楼层


                               
登录/注册后可看大图
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-23 13:22:51 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-23 13:25:00 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-23 13:26:22 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-23 13:42:21 | 显示全部楼层
小号是没法申请精华的。不如发在大号
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 0 反对 1

使用道具 举报

 楼主| 发表于 2023-7-23 14:33:10 | 显示全部楼层
本帖最后由 JasonChencCjj 于 2023-7-23 14:36 编辑
sfqxx 发表于 2023-7-23 13:42
小号是没法申请精华的。不如发在大号


没关系,小号就是体验生活罢了
,这些东西是我刚改入坑的时候做的,发在大号显得有点掉价,
而且我大号至尊vip没有升级了,感觉练级很有趣
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-23 14:33:46 | 显示全部楼层
JasonChencCjj 发表于 2023-7-23 14:33
没关系,小号就是体验生活罢了
,这些东西是我更改入坑的时候做的,发在大号显得有点掉价,
...

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-23 16:33:53 | 显示全部楼层

我的留言板这么受欢迎的吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-23 07:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表