python实现超市商品销售管理系统


Posted in Python onNovember 22, 2019

本文实例为大家分享了python超市商品销售管理系统的具体代码,供大家参考,具体内容如下

class Goods(object):
 def __init__(self, id, name, price):
  self.id = id
  self.name = name
  self.price = price

 def __str__(self):
  info = "编号:%s\t商品名称:%s\t\t价格:%d" % (self.id, self.name, self.price)
  return info
class ShopManager(object):

 def __init__(self, path):
  # path:表示读取文件的路径 shopdic:表示存放内存的容器
  self.path = path
  self.shopdic = self.readFileToDic()

 def readFileToDic(self):
  # 读取文件,写入到字典中
  f = open(self.path, 'r', encoding='utf-8')
  clist = f.readlines()
  f.close()
  index = 0
  shopdic = {}
  while index < len(clist):
   # 将每一行的字符串进行分割,存放到新的列表中
   ctlist = clist[index].replace('\n', "").split("|")
   # 将每行的内容存放到一个对象中
   good = Goods(ctlist[0], ctlist[1], int(ctlist[2]))
   # 将对向存放到集合中
   shopdic[good.id] = good
   index = index + 1
  return shopdic

 def writeContentFile(self):
  # 将内存当中的信息写入到文件当中
  str1 = ''
  for key in self.shopdic.keys():
   good = self.shopdic[key]
   ele = good.id + "|" + good.name + "|" + str(good.price) + "\n"
   str1 = str1 + ele
  f = open(self.path, 'w', encoding='utf-8')
  f.write(str1)
  f.close()

 def addGoods(self):
  # 添加商品的方法
  id = input("请输入添加商品编号:>")
  if self.shopdic.get(id):
   print("商品编号已存在,请重新选择!")
   return
  name = input("请输入添加商品名称:>")
  price = int(input("请输入添加商品价格:>"))
  good = Goods(id, name, price)
  self.shopdic[id] = good
  print("添加成功!")

 def deleteGoods(self):
  # 删除商品的方法
  id = input("请输入删除商品编号:>")
  if self.shopdic.get(id):
   del self.shopdic[id]
   print("删除成功!")
  else:
   print("商品编号不存在!")

 def showGoods(self):
  # 展示所有商品信息
  print("=" * 40)
  for key in self.shopdic.keys():
   good = self.shopdic[key]
   print(good)
  print("=" * 40)

 def adminWork(self):
  info = """
  ==========欢迎进入好海哦购物商场==========
   输入功能编号,您可以选择以下功能:
   输入“1”:显示商品的信息
   输入“2”:添加商品的信息
   输入“3”:删除商品的信息
   输入“4”:退出系统功能
  ==========================================
  """
  print(info)
  while True:
   code = input("请输入功能编号:>")
   if code == "1":
    self.showGoods()
   elif code == "2":
    self.addGoods()
   elif code == "3":
    self.deleteGoods()
   elif code == "4":
    print("感谢您的使用,正在退出系统!!")
    self.writeContentFile()
    break
   else:
    print("输入编号有误,请重新输入!!")

 def userWork(self):
  print(" ==============欢迎进入好海哦购物商场==============")
  print("您可输入编号和购买数量选购商品,输入编号为n则结账")
  self.showGoods()
  total = 0
  while True:
   id = input("请输入购买商品编号:>")
   if id == "n":
    print("本次购买商品共消费%d元,感谢您的光临!" % (total))
    break
   if self.shopdic.get(id):
    good = self.shopdic[id]
    num = int(input("请输入购买数量:>"))
    total = total + good.price * num
   else:
    print("输入商品编号有误,请核对后重新输入!")

 def login(self):
  # 登录功能
  print("==========欢迎登录好海哦购物商场==========")
  uname = input("请输入用户名:>")
  password = input("请输入密码:>")
  if uname == "admin":
   if password == "123456":
    print("欢迎您,admin管理员")
    self.adminWork()
   else:
    print("管理员密码错误,登录失败!")
  else:
   print("欢迎你,%s用户" % (uname))
   # 执行用户的购买功能
   self.userWork()
if __name__ == '__main__':
 shopManage = ShopManager("shop.txt")
 shopManage.login()

python实现超市商品销售管理系统

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现爬虫下载美女图片
Jul 14 Python
Python的Django框架下管理站点的基本方法
Jul 17 Python
Python面向对象编程基础解析(二)
Oct 26 Python
Python设计模式之策略模式实例详解
Jan 21 Python
基于树莓派的语音对话机器人
Jun 17 Python
12个Python程序员面试必备问题与答案(小结)
Jun 24 Python
Python调用百度根据经纬度查询地址的示例代码
Jul 07 Python
python之yield和Generator深入解析
Sep 18 Python
浅析matlab中imadjust函数
Feb 27 Python
PyTorch中的C++扩展实现
Apr 02 Python
Django搭建项目实战与避坑细节详解
Dec 06 Python
用pip给python安装matplotlib库的详细教程
Feb 24 Python
python实现二分类的卡方分箱示例
Nov 22 #Python
python的等深分箱实例
Nov 22 #Python
基于python实现学生信息管理系统
Nov 22 #Python
基于python cut和qcut的用法及区别详解
Nov 22 #Python
python创建学生成绩管理系统
Nov 22 #Python
Python计算不规则图形面积算法实现解析
Nov 22 #Python
python实现连续变量最优分箱详解--CART算法
Nov 22 #Python
You might like
星际争霸兵种名称对照表
2020/03/04 星际争霸
thinkphp命名空间用法实例详解
2015/12/30 PHP
php微信扫码支付 php公众号支付
2019/03/24 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
jquery中常用的SET和GET
2009/01/13 Javascript
js各种验证文本框输入格式(正则表达式)
2010/10/22 Javascript
从零开始学习jQuery (三) 管理jQuery包装集
2011/02/23 Javascript
JavaScript中两个感叹号的作用说明
2011/12/28 Javascript
js获取select标签选中值的两种方式
2014/01/09 Javascript
点击显示指定元素隐藏其他同辈元素的方法
2014/02/19 Javascript
jquery序列化表单去除指定元素示例代码
2014/04/10 Javascript
浅谈javascript中自定义模版
2015/01/29 Javascript
JSONP之我见
2015/03/24 Javascript
JS实现设置ff与ie元素绝对位置的方法
2016/03/08 Javascript
原生js实现百叶窗效果及原理介绍
2016/04/12 Javascript
浅析Bootstrap表格的使用
2016/06/23 Javascript
jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法
2016/11/23 Javascript
关于javascript事件响应的基础语法总结(必看篇)
2016/12/26 Javascript
详解React Native网络请求fetch简单封装
2017/08/10 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
2017/10/19 Javascript
vuex实现的简单购物车功能示例
2019/02/13 Javascript
[02:38]DOTA2亚洲邀请赛 IG战队巡礼
2015/02/03 DOTA
Python函数式编程指南(四):生成器详解
2015/06/24 Python
Python中的列表生成式与生成器学习教程
2016/03/13 Python
Python 由字符串函数名得到对应的函数(实例讲解)
2017/08/10 Python
Django实现简单分页功能的方法详解
2017/12/05 Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
2018/01/24 Python
基于数据归一化以及Python实现方式
2018/07/11 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
Python判断有效的数独算法示例
2019/02/23 Python
python SVD压缩图像的实现代码
2019/11/05 Python
python 上下文管理器及自定义原理解析
2019/11/19 Python
俄罗斯小米家用电器、电子产品和智能家居商店:Poood.ru
2020/04/03 全球购物
村干部群众路线教育活动对照检查材料
2014/10/01 职场文书
解析Java中的static关键字
2021/06/14 Java/Android
MySQL一劳永逸永久支持输入中文的方法实例
2022/08/05 MySQL