python实现手机销售管理系统


Posted in Python onMarch 19, 2019

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

要求如下:

手机销售系统

    手机品牌                手机价格    库存数量
     vivoX9                       2798          25
     iphone7(32G)         4888          31
     iphone7(128G)       5668          22
     iphone7P(128G)     6616          29
     iphone6(16G)         3858          14
     ...

功能要求:

四个选项:

1.查看所有手机品牌

  1.vivoX9 
  2.iphone7(32G)
        ......
        分支选项:
         1.选择产品序号查看详情(根据序号输出产品名称,价格,库存)
                1.购买(库存数量-1,库存为0时,删除该产品)
                 2.返回
         2.返回

2.更改产品库存信息

  1.添加新产品(添加新产品,包括产品名称、价格、库存)
  2.修改原有产品
         输出所有产品信息
             1.根据选择序号进行修改
              2.返回
 3.移除产品库存信息
            1.查看所有产品,根据序号移除
            2.移除所有产品
            3.返回
 4.退出程序

具体实现其功能的代码如下:

# 数据模型类
class Phone(object):
 '''
 手机类
 '''
 def __init__(self,name,price,count):
  self.name = name
  self.price = price
  self.count = count
 
# 用来操作整个程序执行逻辑
class PhoneShop(object):
 '''
 商店类
 '''
 def __init__(self):
  # phone1存储所有手机对象
  self.phones = []
 
 def buy_phone(self):
  print('* 请输入产品信息:')
  name = print('* 请输入手机名称:')
  price = print('* 请输入手机价格:')
  count = print('* 请输入手机库存:')
  # 创建一个新的phone对象
  phone = Phone(name=name, price=price, count=count)
  # 将phone对象添加到phones列表中
  self.phones.append(phone)
  print(self.phones)
 
  print('* 选择产品序号查看详情')
  print('* 1.购买')
  print('* 2.返回')
  shop = int(input('* 请选择您的操作:'))
  while shop < 1 or shop > 2:
   shop = int(input('* 选项不存在,请重新选择:'))
  if shop == 1:
   print('* 购买成功!')
  else:
   pass
 
 def xiugia(self):
  self.query_all()
  idx = int(input('* 请输入你要修改的序号:'))
  phone = Phone[idx - 1]
  new_name = input('* 请输入修改的名称:')
  new_price = input('* 请输入修改的价格:')
  new_count = input('* 请输入修改的库存:')
  phone.name = new_name
  phone.price = new_price
  phone.count = new_count
 
 def run(self):
  '''
  启动程序
  :return:None
  '''
  while True:
   print('* 欢迎使用手机销售管理系统')
   print('* 1.查看所有')
   print('* 2.添加手机')
   print('* 3.删除手机')
   print('* 4.退出程序')
   select = int(input('* 请选择您的操作:'))
   while select < 1 or select > 4:
    select = int(input('* 选项不存在,请重选:'))
   if select == 1:
    self.change()
   elif select == 2:
   #  调用添加手机函数
    self.buy_phone()
   elif select == 3:
    pass
   else:
    print('* 感谢您的使用,欢迎下次再来!')
    break
 
 def yichu(self):
  print('* 1.根据序号移除')
  print('* 2.移除所有产品')
  print('* 3.返回')
  a = int(input('* 请选择您的操作:'))
  while a <1 or a > 3:
   a = int(input('* 选项不存在,请重选'))
  if a == 1:
   pass
  elif a == 2:
   is_del = int(input('* 是否移除所有产品?y/n:'))
   if is_del == 'y':
    phone_list.pop()
    print('* 删除成功!')
   else:
    return
  else:
    return
 
 def query_all(self):
  for phone in self.phones:
   print(phone.name,phone.price,phone.count)
 
 def change(self):
  for phone in self.phones:
   print(phone.name,phone.price,phone.count)
 
  print('* 1.添加新产品')
  print('* 2.修改原有产品')
  result = int(input('* 请选择您的操作:'))
  while result < 1 or result > 2:
   result = (input('* 选项不存在,请重新选择:'))
  if result == 1:
   self.qurey_all()
  else:
   print('* 输出所有产品信息')
   print('* 1.根据选择序号进行修改')
   print('* 2.返回')
   index = int(input('* 请输入您的选择:'))
   while index < 1 or index > 2:
    index = int(input('* 选项不存在,请重新选择:'))
   if index == 1:
    pass
   else:
    return
 
 
phone_list = []
 
shop = PhoneShop()
shop.run()
shop.yichu()

程序运行出来之后的界面如下:

python实现手机销售管理系统

然后根据提示继续操作

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

Python 相关文章推荐
Python模块搜索概念介绍及模块安装方法介绍
Jun 03 Python
python 简单的绘图工具turtle使用详解
Jun 21 Python
python 获取当天凌晨零点的时间戳方法
May 22 Python
python中dict字典的查询键值对 遍历 排序 创建 访问 更新 删除基础操作方法
Sep 13 Python
实例讲解python中的序列化知识点
Oct 08 Python
python自动化UI工具发送QQ消息的实例
Aug 27 Python
基于python的BP神经网络及异或实现过程解析
Sep 30 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
Dec 12 Python
torchxrayvision包安装过程(附pytorch1.6cpu版安装)
Aug 26 Python
Python可以用来做什么
Nov 23 Python
5行Python代码实现一键批量扣图
Jun 29 Python
Django框架中模型的用法
Jun 10 Python
Python使用修饰器进行异常日志记录操作示例
Mar 19 #Python
python学生管理系统学习笔记
Mar 19 #Python
Python操作rabbitMQ的示例代码
Mar 19 #Python
Python Matplotlib实现三维数据的散点图绘制
Mar 19 #Python
浅谈python中get pass用法
Mar 19 #Python
使用matplotlib中scatter方法画散点图
Mar 19 #Python
详解django+django-celery+celery的整合实战
Mar 19 #Python
You might like
php 全局变量范围分析
2009/08/07 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
2014/06/21 PHP
php实现的支付宝网页支付功能示例【基于TP5框架】
2019/09/16 PHP
javascript 写类方式之四
2009/07/05 Javascript
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
使用JS获取当前地理位置方法汇总
2014/12/18 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
快速解决Canvas.toDataURL 图片跨域的问题
2016/05/10 Javascript
jQuery实现鼠标滚动图片延迟加载效果附源码下载
2016/06/28 Javascript
jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
2016/11/18 Javascript
基于jQuery实现Accordion手风琴自定义插件
2020/10/13 Javascript
Bootstrap列表组学习使用
2017/02/09 Javascript
学习使用jQuery表单验证插件和日历插件
2017/02/13 Javascript
Vue.js对象转换实例
2017/06/07 Javascript
Vue.js获取被选择的option的value和text值方法
2018/08/24 Javascript
Ant Design moment对象和字符串之间的相互转化教程
2020/10/27 Javascript
详解Vue.js 可拖放文本框组件的使用
2021/03/03 Vue.js
[01:06]DOTA2隆重推出2016冬季勇士令状 内含上海特级锦标赛互动指南
2016/02/17 DOTA
python两种遍历字典(dict)的方法比较
2014/05/29 Python
Python松散正则表达式用法分析
2016/04/29 Python
Python标准库shutil用法实例详解
2018/08/13 Python
django 外键model的互相读取方法
2018/12/15 Python
详解Python3除法之真除法、截断除法和下取整对比
2019/05/23 Python
python模块常用用法实例详解
2019/10/17 Python
Tensorflow 实现分批量读取数据
2020/01/04 Python
Python用input输入列表的实例代码
2020/02/07 Python
解决Python中导入自己写的类,被划红线,但不影响执行的问题
2020/07/13 Python
python 通过 pybind11 使用Eigen加速代码的步骤
2020/12/07 Python
大学生预备党员自我评价分享
2013/11/16 职场文书
大三学生入党思想汇报
2014/01/02 职场文书
买卖协议书范本
2014/04/21 职场文书
音乐研修感悟
2015/11/18 职场文书
创业计划书之书店
2019/09/10 职场文书
JS如何实现基于websocket的多端桥接平台
2021/05/14 Javascript
mysql中between的边界,范围说明
2021/06/08 MySQL