您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么用python實現超市進銷存管理系統”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
面向對象程序設計
python實現超市進銷存管理系統
系統包括7種操作,分別是:1.查詢所有商品;2.添加商品;3.修改商品;4.刪除商品;5.賣出商品;6.匯總;0.退出系統。
定義一個商品類
#定義一個商品類 class Goods: def __init__(self,name,num,cin,cout): self.name = name self.num = num self.cin = cin self.cout = cout def __str__(self): state = "已售罄" if self.num == 0: return '名稱:%s , 數量:%d %s, 進貨價格:%.2f ,售出價格:%.2f '%(self.name,self.num,state,self.cin,self.cout) else: return '名稱:%s , 數量:%d , 進貨價格:%.2f ,售出價格:%.2f '%(self.name,self.num,self.cin,self.cout) 定義一個匯總類 #定義一個匯總類 class gGoods: def __init__(self,name,gnum,gcin,gcout): self.name = name self.gnum = gnum self.gcin = gcin self.gcout = gcout def __str__(self): return '名稱:%s , 賣出數量:%d , 進貨價格:%.2f ,賣出價格:%.2f '%(self.name,self.gnum,self.gcin,self.gcout)
定義管理商品類
#定義管理商品類 class GoodsManager: go=[] js=[] #構造方法 def init(self): self.go.append(Goods('牛奶',5,40,60)) self.go.append(Goods('盒飯',5,10,60)) self.js.append(gGoods('菇娘',1,30,60)) #菜單 def Menu(self): self.init() print('\"超市進銷存管理系統\"菜單:') print("1.顯示所有商品") print("2.添加新的商品") print("3.修改商品信息") print("4.刪除商品") print("5.賣出商品") print("6.匯總") print("0.退出") print("***********************************") while True: SN=int(input("===請輸入操作序號:")) if SN in [0,1,2,3,4,5,6]: if SN == 0: print("已經退出") break; if SN == 1: self.Show_all() elif SN == 2: self.Add() elif SN == 3: self.Modify() elif SN == 4: self.Delete() elif SN == 5: self.Shop() elif SN == 6: self.Summary() else: print("輸入有誤!") #顯示 def Show_all(self): for goods in self.go: print (str(goods)) #添加 def Add(self): goods_name = input("請輸入商品名稱:") ret = self.check(goods_name) if ret != None: print('商品已經存在') print('是否增加商品數量:(y/n)') while True: pd = input() if pd == 'y': goods_num = int(input("請輸入商品的數量:")) old_goods = Goods(goods_name,goods_num+ret.num,ret.cin,ret.cout) self.go.remove(ret) self.go.append(old_goods) print("增加成功") break elif pd == 'n': print("已經返回") break else: print("輸入有誤,重新輸入:") else: goods_num = int(input("請輸入商品的數量:")) goods_cin = float(input("請輸入商品進貨價格:")) goods_cout = float(input("請輸入商品出貨價格:")) if goods_num>0 and goods_cin>0 and goods_cout>0: new_goods= Goods(goods_name,goods_num,goods_cin,goods_cout) self.go.append(new_goods) print("添加成功") else: print("小可愛,輸入錯誤!") #修改 def Modify(self): goods_name = input("請輸入需要修改的商品名稱:") ret = self.check(goods_name) if ret != None: print(ret) goods_name1 = input("請輸入修改后商品的名稱:") goods_num = int(input("請輸入修改后商品的數量:")) goods_cin = float(input("請輸入修改后商品進貨價格:")) goods_cout = float(input("請輸入修改后商品出貨價格:")) old_goods= Goods(goods_name1,goods_num,goods_cin,goods_cout) self.go.remove(ret) self.go.append(old_goods) print("修改成功") else: print("小可愛,沒有此商品!") #檢查 def check(self,goods_name): for goods in self.go: if goods.name == goods_name: return goods else: return None #檢查js def checkjs(self,goods_name): for goods in self.js: if goods.name ==goods_name: return goods else: return None #刪除 def Delete(self): goods_name = input("請輸入需要刪除的商品名稱:") ret = self.check(goods_name) if ret != None: print(ret) print('是否刪除商品:(y/n)') while True: pd = input() if pd == 'y': self.go.remove(ret) print("刪除成功") break elif pd == 'n': print("已經返回") break else: print("輸入有誤,重新輸入:") else: print("小可愛,沒有此商品!") #賣出 def Shop(self): goods_name = input("請輸入需要賣出的商品名稱:") ret = self.check(goods_name) if ret != None: g_num=int(input("賣出個數:")) if ret.num-g_num<0: print("該商品數量不足!請補充") else: old_goods= Goods(ret.name,ret.num-g_num,ret.cin,ret.cout) self.go.remove(ret) self.go.append(old_goods) gret = self.checkjs(goods_name) if gret == None: shop_goods = gGoods(ret.name,g_num,ret.cin*g_num,ret.cout*g_num) self.js.append(shop_goods) else: shop_goods = gGoods(gret.name,g_num+gret.gnum,gret.gcin+ret.cin*g_num,gret.gcout+ret.cout*g_num) self.js.remove(gret) self.js.append(shop_goods) print("賣出后:",end=' ') old_goods= Goods(ret.name,ret.num-g_num,ret.cin*g_num,ret.cout*g_num) print(old_goods) else: print("小可愛,沒有此商品!") #匯總當天賣出商品,包括每種銷售商品名稱、數量、進貨總價、銷售總價等。 def Summary(self): for goods in self.js: print (str(goods)) print("售出的物品進貨總價:",end="") x=0 for goods in self.js: x+=float(goods.gcin) print(x) print("售出的物品銷售總價:",end="") y=0 for goods in self.js: y+=float(goods.gcout) print(y) print("利潤:",y-x);```
“怎么用python實現超市進銷存管理系統”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。