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下paramiko模块实现ssh连接登录Linux服务器
Jun 03 Python
使用py2exe在Windows下将Python程序转为exe文件
Mar 04 Python
Python 获得命令行参数的方法(推荐)
Jan 24 Python
python定时关机小脚本
Jun 20 Python
详解python如何在django中为用户模型添加自定义权限
Oct 15 Python
opencv resize图片为正方形尺寸的实现方法
Dec 26 Python
Python3.6安装卸载、执行命令、执行py文件的方法详解
Feb 20 Python
jupyter notebook 调用环境中的Keras或者pytorch教程
Apr 14 Python
基于python实现简单网页服务器代码实例
Sep 14 Python
python中使用asyncio实现异步IO实例分析
Feb 26 Python
python可视化之颜色映射详解
Sep 15 Python
Elasticsearch 基本查询和组合查询
Apr 19 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新手上路(六)
2006/10/09 PHP
php操作(删除,提取,增加)zip文件方法详解
2015/03/12 PHP
PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
2018/06/22 PHP
JQuery 自定义CircleAnimation,Animate方法学习笔记
2011/07/10 Javascript
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
2012/06/22 Javascript
SuperSlide标签切换、焦点图多种组合插件
2015/03/14 Javascript
js实现的四级左侧网站分类菜单实例
2015/05/06 Javascript
解决jquery插件:TypeError:$.browser is undefined报错的方法
2015/11/21 Javascript
javascript执行环境及作用域详解
2016/05/05 Javascript
AngularJS Bootstrap详细介绍及实例代码
2016/07/28 Javascript
JS实现漂亮的时间选择框效果
2016/08/20 Javascript
原生JS实现网络彩票投注效果
2016/09/25 Javascript
微信小程序tabBar模板用法实例分析【附demo源码下载】
2017/11/28 Javascript
详解layui弹窗父子窗口之间传参数的方法
2018/01/16 Javascript
小程序实现留言板
2018/11/02 Javascript
webpack 动态批量加载文件的实现方法
2020/03/19 Javascript
python实现简易通讯录修改版
2018/03/13 Python
计算机二级python学习教程(3) python语言基本数据类型
2019/05/16 Python
Django将默认的SQLite更换为MySQL的实现
2019/11/18 Python
10行Python代码实现Web自动化管控的示例代码
2020/08/14 Python
python opencv实现简易画图板
2020/08/27 Python
德国狗狗用品在线商店:Schecker
2017/03/17 全球购物
“型”走纽约上东区:Sam Edelman
2017/04/02 全球购物
中东奢侈品市场:Coveti
2019/05/12 全球购物
事业单位个人应聘自荐信
2013/09/21 职场文书
培训自我鉴定
2014/01/31 职场文书
开学典礼策划方案
2014/05/28 职场文书
金融系毕业生自荐书
2014/07/08 职场文书
幼儿园见习报告
2014/10/30 职场文书
测量员岗位职责
2015/02/14 职场文书
写给老师的保证书
2015/05/09 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
幼儿园教师暑期培训心得体会
2016/01/09 职场文书
浅谈Redis 中的过期删除策略和内存淘汰机制
2022/04/03 Redis
ant design vue的form表单取值方法
2022/06/01 Vue.js
Redis主从复制操作和配置详情
2022/09/23 Redis