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 version 2.7 required, which was not found in the registry
Aug 26 Python
详解Python3.1版本带来的核心变化
Apr 07 Python
Python实现爬取逐浪小说的方法
Jul 07 Python
浅谈django三种缓存模式的使用及注意点
Sep 30 Python
pygame游戏之旅 添加icon和bgm音效的方法
Nov 21 Python
Python获取基金网站网页内容、使用BeautifulSoup库分析html操作示例
Jun 04 Python
浅析Python数字类型和字符串类型的内置方法
Dec 22 Python
使用 PyTorch 实现 MLP 并在 MNIST 数据集上验证方式
Jan 08 Python
django日志默认打印request请求信息的方法示例
May 17 Python
Python devel安装失败问题解决方案
Jun 09 Python
python dir函数快速掌握用法技巧
Dec 09 Python
Python+Appium实现自动抢微信红包
May 21 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
php方法调用模式与函数调用模式简例
2011/09/20 PHP
这段js代码得节约你多少时间
2011/12/20 Javascript
原生javascript实现无间缝滚动示例
2014/01/28 Javascript
jQuery表单域属性过滤器用法分析
2015/02/10 Javascript
javascript操作ul中li的方法
2015/05/14 Javascript
js实现黑色简易的滑动门网页tab选项卡效果
2015/08/31 Javascript
AngularJS数据源的多种获取方式汇总
2016/02/02 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
2016/10/15 Javascript
Nodejs+Socket.io实现通讯实例代码
2017/02/13 NodeJs
jQueryeasyui 中如何使用datetimebox 取两个日期间相隔的天数
2017/06/13 jQuery
vue.js根据代码运行环境选择baseurl的方法
2018/02/28 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
2019/12/17 Javascript
js中复选框的取值及赋值示例详解
2020/10/18 Javascript
解决ant-design-vue中menu菜单无法默认展开的问题
2020/10/31 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
python中常用检测字符串相关函数汇总
2015/04/15 Python
在Python中实现贪婪排名算法的教程
2015/04/17 Python
Python实现的数据结构与算法之快速排序详解
2015/04/22 Python
Python数据库的连接实现方法与注意事项
2016/02/27 Python
Python的语言类型(详解)
2017/06/24 Python
Python中的函数作用域
2018/05/07 Python
Python中GIL的使用详解
2018/10/03 Python
Python大数据之网络爬虫的post请求、get请求区别实例分析
2019/11/16 Python
15个Pythonic的代码示例(值得收藏)
2020/10/29 Python
Python Django路径配置实现过程解析
2020/11/05 Python
Python 实现二叉查找树的示例代码
2020/12/21 Python
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
美国迪克体育用品商店:DICK’S Sporting Goods
2018/07/24 全球购物
NFL Game Pass欧洲:在线观看NFL比赛直播和点播,以高清质量播放
2018/08/30 全球购物
如何客观的进行自我评价
2013/12/17 职场文书
经济信息系毕业生自荐信
2014/06/02 职场文书
师德师风剖析材料
2014/09/30 职场文书
银行职员工作失误检讨书
2014/10/14 职场文书
硕士论文致谢范文
2015/05/14 职场文书
golang 实现两个结构体复制字段
2021/04/28 Golang