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 相关文章推荐
Python3.x版本中新的字符串格式化方法
Apr 24 Python
Python多线程实现同步的四种方式
May 02 Python
说说如何遍历Python列表的方法示例
Feb 11 Python
对python中的控制条件、循环和跳出详解
Jun 24 Python
浅谈Python中函数的定义及其调用方法
Jul 19 Python
对python中UDP,socket的使用详解
Aug 22 Python
opencv3/C++实现视频背景去除建模(BSM)
Dec 11 Python
Keras 数据增强ImageDataGenerator多输入多输出实例
Jul 03 Python
python实现自动清理重复文件
Aug 24 Python
Python 生成短8位唯一id实战教程
Jan 13 Python
2021年值得向Python开发者推荐的VS Code扩展插件
Jan 25 Python
教你利用Selenium+python自动化来解决pip使用异常
May 20 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
英雄试炼之肉山谷—引领RPG新潮流
2020/04/20 DOTA
Wordpress 相册插件 NextGEN-Gallery 添加目录将中文转为拼音的解决办法
2010/12/29 PHP
PHP防止post重复提交数据的简单例子
2014/06/07 PHP
PHP微信开发之有道翻译
2016/06/23 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
2017/02/10 PHP
在laravel中实现事务回滚的方法
2019/10/10 PHP
jquery text()要注意啦
2009/10/30 Javascript
ajax与302响应代码测试
2013/10/23 Javascript
Jquery跳到页面指定位置的方法
2014/05/12 Javascript
jquery中使用循环下拉菜单示例代码
2014/09/24 Javascript
JavaScript使用replace函数替换字符串的方法
2015/04/06 Javascript
JQuery选中checkbox方法代码实例(全选、反选、全不选)
2015/04/27 Javascript
详细解读JavaScript编程中的Promise使用
2015/07/27 Javascript
Nodejs Express4.x开发框架随手笔记
2015/11/23 NodeJs
Jquery-data的三种用法
2017/04/18 jQuery
JS中使用new Option()实现时间联动效果
2018/12/10 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
JS window对象简单操作完整示例
2020/01/14 Javascript
Python函数的周期性执行实现方法
2016/08/13 Python
python实现微信自动回复功能
2018/04/11 Python
Pyinstaller加密打包应用的示例代码
2020/06/11 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
Python浮点型(float)运算结果不正确的解决方案
2020/09/22 Python
什么是Oracle的后台进程background processes?都有哪些后台进程?
2012/04/26 面试题
晚宴邀请函范文
2014/01/15 职场文书
建筑系毕业生自我鉴定
2014/01/24 职场文书
经典商业广告词
2014/03/13 职场文书
学历公证书范本
2014/04/09 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
县政府领导班子四风问题对照检查材料思想汇报
2014/09/26 职场文书
2014年采购工作总结
2014/11/20 职场文书
电视新闻稿
2015/07/17 职场文书
2016年员工年度考核评语
2015/12/02 职场文书
小学家庭教育心得体会
2016/01/14 职场文书
深入浅出讲解Java8函数式编程
2022/01/18 Java/Android
Python matplotlib 利用随机函数生成变化图形
2022/04/26 Python