一个简单的仓库管理系统

小白纪念自己写的第一个代码,里面的内容略显冗杂,希望有大神批评指正。这个代码不涉及数据库,全部用字典和列表代替,也仅仅是简单的循环遍历。

"""简易物流操作"""
"""基本功能:1、仓库的入库(名称和数量)2、仓库的出库(名称和数量)3、物流状态的查询4、查询库存5、员工调度查询技术:数据类型(字典列表)、循环、条件语句
"""
"""设计思路:1、仓库的入库出库1)创建一个空字典当作库用于存储商品名称及数量2)创建两个列表,分别用来存储字典中的key和value3)输入的元素作为字典中的key和存储key值的列表进行比对。<1>输入元素已存在于列表中,则遍历算出找到该元素的步长,存储value值的列表根据步长寻到对应的值,并根据入库还是出库,算出新的value,分别在字典和列表中将原有value进行替换<2>输入元素不存在于列表中,入库操作时,添加新的kv对;出库操作则提示错误2、查询库存通过print直接在控制面板上输出字典3、物流状态查询1)创建一个字典当作库,单号与状态形成kv对,提前将订单号及状态写入2)创建两个列表,分别用来存储字典中的key和value3)输入的元素作为字典中的key和存储key值的列表进行比对。<1>输入元素已存在于列表中,则遍历算出找到该元素的步长,存储value值的列表根据步长寻到对应的值,并将该值打印输出<2>输入元素不存在于列表中,则提示该货物不存在4、岗位人员数量安排查询1)创建一个字典当作库,岗位与人数形成kv对,提前将岗位及人数写入2)创建两个列表,分别用来存储字典中的key和value3)输入的元素作为字典中的key和存储key值的列表进行比对。<1>输入元素已存在于列表中,则遍历算出找到该元素的步长,存储value值的列表根据步长寻到对应的值,并将该值打印输出<2>输入元素不存在于列表中,则提示该岗位不存在
"""
"""代码开始"""#coding=UTF-8
lst={}#创建库存字典
aa=[]#创建入库存储货物名的列表
bb=[]#创建入库存储数量的列表
aaa=[]#创建出库存储货物名的列表
bbb=[]#创建出库存储数量的列表
d={"123115":"已到达送货地址","21561":"到达济南","35958":"离开济南发往北京"}#创建字典当作物流状态库
gg=[]#存储订单号的列表
ww=[]#存储运输状态的列表
#创建工作岗位库
ff={"仓库人员":"100","电脑技术维修工":"1","运输车司机":"30","客服人员":"20","业务经理":"3","市场营销人员":"15","仓库主管":"1","电子商务人员":"10","美工":"1",}
ga=[]#存储岗位名的列表
wb=[]#存储岗位人员数量的列表
flag=True
"""循环开始"""
while flag:t=input("请选择操作类型:1 入库 2 出库 3 物流状态查询 4 查询库存 5 岗位人员数量安排查询")#给出操作提示"""入库开始"""if str(t)=="1":f=True"""循环开始"""while f:la=str(input("请输入货物名称(E退出):"))if la=="E":f=Falseelse :for a in lst.keys():# a是字典lst的key,相当于库中的货物名aa.append(a)# 将货物名存入列表aa中for b in lst.values():# b是字典lst的value,相当于库中的数量bb.append(b)# 将数量存入列表bb中"""遍历求列表aa找到输入的货物名la用的步长,求列表bb中对应的步长的值"""if la in aa:#输入的货物名在库中c = -1for ca in aa:#给定库中的一个元素,并进行遍历c = c + 1if ca == la:#当给定元素与输入相同时,遍历结束,求出步长cn = bb[c]#入库前的货物数量t=input("请输入入库数量:")x = int(n) + int(t)#入库后的货物数量lst[la]=x#将仓库中原数量替换为入库后的bb[c]=x#将给定元素替换为入库后的数量print("入库成功")else:lb = input("请输入入库数量:")lst[la] = lb#在库中添加货物名及数量print("入库成功")"""出库开始"""if str(t)=="2":l=str(input("请输入货物名称:"))for ad in lst.keys():# ad是字典lst的key,相当于库中的货物名aaa.append(ad)# 将货物名存入列表aaa中for bd in lst.values():# bd是字典lst的value,相当于库中的数量bbb.append(bd)# 将数量存入列表bbb中"""遍历求列表aaa找到输入的货物名l用的步长,求列表bbb中对应的步长的值"""if l in aaa:#输入的货物名在库中c = -1for cc in aaa:#给定库中的一个元素,并进行遍历c = c + 1#c为步长if cc == l:#当给定元素与输入相同时,遍历结束,求出步长cnn = bbb[c]#nn为出库前的数量tt = input("请输入出库数量:")ttt=int(nn)-int(tt)#ttt为出库后的数量if ttt<0:print("货物不足,请及时补货!!!")print("货物余量:")print(lst[l])#打印出库前的数量else:lst[l]=ttt#将库中原有数量改成出库后的数量bbb[c] = ttt#在列表原来的数量位置替换为出库后的数量print("出库成功,货物余量:")print(lst[l])#打印出库后的数量else:print("货物不存在")"""物流状态查询开始"""if str(t) == "3":lc = input("请输入货物单号:")for ab in d.keys():  # ab是字典d的key,相当于库中的单号gg.append(ab)  # 将单号存入列表gg中for ba in d.values():  # ba是字典d的value,相当于库中的物流状态ww.append(ba)  # 将物流状态存入列表ww中"""遍历求列表gg找到输入的单号lc用的步长,求列表ww中对应的步长的值"""if lc in gg:  # 当输入的单号在列表gg中c = -1for ca in gg:  # 当输入的单号在列表gg中c = c + 1  # c为步长if ca == lc:  # ca=lc时,求得步长,算出输入的单号在列表gg的位置vb = ww[c]  # 根据求得的位置找出ww列表对应的信息print(vb)else:print("货物不存在,请重新输入!")"""库存查询开始"""if str(t) == "4":print(lst)#输出打印字典lst"""岗位及人员数量查询开始"""if str(t) == "5":print("仓库人员"+" "+"电脑技术维修工"+" "+"运输车司机"+" "+"客服人员"+" "+"业务经理"+" "+"市场营销人员"+" "+"仓库主管"+" "+"电子商务人员"+" "+"美工")lg = input("请输入查询岗位:")for ag in ff.keys():# ag是字典d的key,相当于库中的岗位名ga.append(ag)# 将岗位名存入列表ga中for bg in ff.values():# bg是字典d的key,相当于库中的岗位人员数量wb.append(bg)# 将岗位人员数量存入列表wb中"""遍历求列表ga找到输入的岗位名lg用的步长,求列表wb中对应的步长的值"""if lg in ga:#输入的岗位名在库中c = -1for cg in ga:c = c + 1if cg == lg:vg = wb[c]#vg为员工数量print("员工人数为:"+vg + "人")else:print("岗位不存在,请重新输入!")"""程序结束"""

python仓库管理相关推荐

  1. Python+Vue计算机毕业设计仓库管理oni4h(源码+程序+LW+部署)

    该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+V ...

  2. python商品管理系统_Python信息系统实验:仓库管理!

    Warehouse management: this is just a test application for demonstrating logistics information system ...

  3. puppet运维自动化之yum仓库管理

    puppet运维自动化之yum仓库管理 2012-05-05 21:03 sky mysqlops.com 字号:T | T 系统运维人员,经常需要安装或者升级特定的升级包,有的是自己编译的rpm包, ...

  4. 从4个月到7天,Netflix开源Python框架Metaflow有何提升性能的魔法?

    作者 | Rupert Thomas 译者 | 凯隐 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) [导语]Metaflow 是由 Netflix 开发,用在数据科学领域的 ...

  5. 程序员的求生欲有所强?用 Python 花式哄女友

    作者 | Ryoko 来源 | 凹凸数据 七夕(各种节日.纪念日)又到啦,程序员(怎么会不是单身呢)又要想招来哄女友啦?想必大家都知道各种各样的代码式浪漫. 想必大家都知道各种各样的代码式浪漫,比如定 ...

  6. Python操作git

    一.Git版本管理 很多公司在使用git的tag进行版本的管理. git tag -n 查看本地Tag git tag -l 'v1.4.2.*' 查看本地Tag,模糊匹配 git show v1.0 ...

  7. python做数据库管理系统_python+Django+mysql+bootstrap前端,数据库一次搞定)从头教你毕设实现一个简易好看的仓储物资管理之类系统...

    在线QQ客服:1922638 专业的SQL Server.MySQL数据库同步软件 废话不多说,这是产品接口,一篇文章澄清了Django的前端背景并实现了一个漂亮的系统,git直接拉到末尾^ _ ^ ...

  8. 西安python后端招聘_有大佬招 Python 后端初级人员吗?

    熟练掌握 python 基础,Django 框架 熟练 Django-rest-framework 与 Restful API 接口规范 熟悉第三方库如 request,selenium 并能实 ...

  9. python做项目管理代码_代码发布项目(三)——python操作git、代码发布流程(服务器管理、项目管理)...

    一.python如何操作git 如果你想用python代码操作git需要下载一个模块 安装 pip install gitpython 基本使用 #从远处仓库下载代码到本地 importosfrom ...

  10. 程序员的求生欲有所强?用Python花式哄女友

    作者 | Ryoko 来源 | 凹凸数据 七夕(各种节日.纪念日)又到啦,程序员(怎么会不是单身呢)又要想招来哄女友啦?想必大家都知道各种各样的代码式浪漫. 想必大家都知道各种各样的代码式浪漫,比如定 ...

最新文章

  1. 采集/自动登录啊都可以用这两个方法实现 asp.net
  2. A Guide to Python's Magic Methods
  3. FTP匿名登录或弱口令漏洞及服务加固
  4. Python 3 教程二:文件,目录和路径
  5. hdu 1760 DFS+博弈
  6. python数据符号函数等一切皆对象_第一章:Python高级编程-Python一切皆对象
  7. rel=nofollow属性--seo
  8. (转)区块链:哈希、公钥、私钥、加密、数字签名、数字证书、默克尔树、零知识证明
  9. 汇编语言 数据寄存器AX、BX、CX、DX
  10. Linux下 eclipse下载
  11. 【2020最新,无错误!】python实现百度API---地址转经纬度(地理编码)/经纬度转地址(逆地理编码),含源码
  12. 【C++】1、C++ 11新特性
  13. MySQL- cluster集群----实现高可用
  14. 经典机器学习算法:k近邻法
  15. 2022年智能手机市场概括
  16. macOS卸载Cisco AnyConnect的正确方式
  17. 基于Arduino通过并联L298N实现四驱麦克纳姆轮巡迹小车
  18. 计算机专业中经典书籍(程序猿和大学生必读)
  19. 第一章 JDBC基础操作 ② 代码
  20. 【手把手指导】给开源项目贡献代码

热门文章

  1. 基于PostgreSQL+Geoserver+OpenLayers的Webgis台风路径地图服务发布
  2. 信鸽 ios tag推送 php,信鸽推送平台常见问题汇总iOS端
  3. Python爬虫实战之爬取链家广州房价_01简单的单页爬虫
  4. 色情版“微信”背后的秘密
  5. java开源工作流引擎
  6. Windows系统微软拾色器小工具
  7. Android studio开发Android图灵智能聊天机器人,课程设计报告
  8. Pdman数据库建模工具——使用教程
  9. android 手柄,Android平台使用PS3无线手柄攻略
  10. 边缘检测——sobel索伯算子 数学原理和应用