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中使用urllib2伪造HTTP报头的2个方法
Jul 07 Python
Python基础练习之用户登录实现代码分享
Nov 08 Python
用Python3创建httpServer的简单方法
Jun 04 Python
对python:threading.Thread类的使用方法详解
Jan 31 Python
对python多线程SSH登录并发脚本详解
Feb 14 Python
python线程中的同步问题及解决方法
Aug 29 Python
python抓取多种类型的页面方法实例
Nov 20 Python
pytorch实现建立自己的数据集(以mnist为例)
Jan 18 Python
Python while循环使用else语句代码实例
Feb 07 Python
django实现模型字段动态choice的操作
Apr 01 Python
使用ITK-SNAP进行抠图操作并保存mask的实例
Jul 01 Python
Python matplotlib安装以及实现简单曲线的绘制
Apr 26 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 日期时间处理函数小结
2009/12/18 PHP
php命令行使用方法和命令行参数说明
2014/04/08 PHP
JavaScript 字符串乘法
2009/08/20 Javascript
jquery1.4 教程二 ajax方法的改进
2010/02/25 Javascript
Javascript实现获取窗口的大小和位置代码分享
2014/12/04 Javascript
浅谈javascript中this在事件中的应用
2015/02/15 Javascript
JavaScript实现重置表单(reset)的方法
2015/04/02 Javascript
学习javascript的闭包,原型,和匿名函数之旅
2015/10/18 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
AngularJS equal比较对象实例详解
2016/09/14 Javascript
js循环map 获取所有的key和value的实现代码(json)
2018/05/09 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
ES6知识点整理之函数数组参数的默认值及其解构应用示例
2019/04/17 Javascript
[01:38]完美世界DOTA2联赛PWL S3 集锦第四期
2020/12/21 DOTA
wxpython学习笔记(推荐查看)
2014/06/09 Python
python单元测试unittest实例详解
2015/05/11 Python
Python中的choice()方法使用详解
2015/05/15 Python
在Python的Django框架的视图中使用Session的方法
2015/07/23 Python
python去除拼音声调字母,替换为字母的方法
2018/11/28 Python
对python3 中方法各种参数和返回值详解
2018/12/15 Python
Django中提供的6种缓存方式详解
2019/08/05 Python
Python 生成一个从0到n个数字的列表4种方法小结
2019/11/28 Python
Python数据结构dict常用操作代码实例
2020/03/12 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
2020/09/20 Python
高三地理教学反思
2014/01/11 职场文书
乔迁宴答谢词
2014/01/21 职场文书
小班秋游活动方案
2014/02/22 职场文书
党员承诺书内容
2014/03/26 职场文书
篝火晚会策划方案
2014/05/16 职场文书
班组长安全工作职责
2014/07/15 职场文书
辛亥革命观后感
2015/06/02 职场文书
送给教师们,到底该如何写好教学反思?
2019/07/02 职场文书
2019年消防宣传标语集锦
2019/11/21 职场文书
Pytorch中Softmax和LogSoftmax的使用详解
2021/06/05 Python
python 字典和列表嵌套用法详解
2021/06/29 Python
PHP遍历数组的6种方式总结
2021/11/17 PHP