欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)超市進(jìn)銷存管理系統(tǒng)

 更新時間:2022年06月02日 13:44:50   作者:巴鴿  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)超市進(jìn)銷存管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python實(shí)現(xiàn)超市進(jìn)銷存管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

面向?qū)ο蟪绦蛟O(shè)計

系統(tǒng)包括7種操作,分別是:1.查詢所有商品;2.添加商品;3.修改商品;4.刪除商品;5.賣出商品;6.匯總;0.退出系統(tǒng)。

定義一個商品類

#定義一個商品類
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 , 數(shù)量:%d %s, 進(jìn)貨價格:%.2f ,售出價格:%.2f '%(self.name,self.num,state,self.cin,self.cout)
? ? ? ? else:
? ? ? ? ? ? return '名稱:%s , 數(shù)量:%d , 進(jìn)貨價格:%.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 , 賣出數(shù)量:%d , 進(jìn)貨價格:%.2f ,賣出價格:%.2f '%(self.name,self.gnum,self.gcin,self.gcout)

定義管理商品類

#定義管理商品類
class GoodsManager:
? ? go=[]
? ? js=[]
? ? #構(gòu)造方法
? ? 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('\"超市進(jìn)銷存管理系統(tǒng)\"菜單:')
? ? ? ? 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("已經(jīng)退出")
? ? ? ? ? ? ? ? ? ? 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('商品已經(jīng)存在')
? ? ? ? ? ? print('是否增加商品數(shù)量:(y/n)')
? ? ? ? ? ? while True:
? ? ? ? ? ? ? ? pd = input()
? ? ? ? ? ? ? ? if pd == 'y':
? ? ? ? ? ? ? ? ? ? goods_num = int(input("請輸入商品的數(shù)量:"))
? ? ? ? ? ? ? ? ? ? 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("已經(jīng)返回")
? ? ? ? ? ? ? ? ? ? break
? ? ? ? ? ? ? ? else:
? ? ? ? ? ? ? ? ? ? print("輸入有誤,重新輸入:")
? ? ? ? ? ??
? ? ? ? else:
? ? ? ? ? ? goods_num = int(input("請輸入商品的數(shù)量:"))
? ? ? ? ? ? goods_cin = float(input("請輸入商品進(jìn)貨價格:"))
? ? ? ? ? ? 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("請輸入修改后商品的數(shù)量:"))
? ? ? ? ? ? goods_cin = float(input("請輸入修改后商品進(jìn)貨價格:"))
? ? ? ? ? ? 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("已經(jīng)返回")
? ? ? ? ? ? ? ? ? ? break
? ? ? ? ? ? ? ? else:
? ? ? ? ? ? ? ? ? ? print("輸入有誤,重新輸入:")
? ? ? ? else:
? ? ? ? ? ? print("小可愛,沒有此商品!")
? ? #賣出
? ? def Shop(self):
? ? ? ? goods_name = input("請輸入需要賣出的商品名稱:")
? ? ? ? ret = self.check(goods_name)
? ? ? ? if ret != None:
? ? ? ? ? ? g_num=int(input("賣出個數(shù):"))
? ? ? ? ? ? if ret.num-g_num<0:
? ? ? ? ? ? ? ? print("該商品數(shù)量不足!請補(bǔ)充")
? ? ? ? ? ? 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("小可愛,沒有此商品!")
? ? #匯總當(dāng)天賣出商品,包括每種銷售商品名稱、數(shù)量、進(jìn)貨總價、銷售總價等。
? ? def Summary(self):
? ? ? ? for goods in self.js:
? ? ? ? ? ? print (str(goods))
? ? ? ? print("售出的物品進(jìn)貨總價:",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);```

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python print輸出延時,讓其立刻輸出的方法

    python print輸出延時,讓其立刻輸出的方法

    今天小編就為大家分享一篇python print輸出延時,讓其立刻輸出的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Django繼承自帶user表并重寫的例子

    Django繼承自帶user表并重寫的例子

    今天小編就為大家分享一篇Django繼承自帶user表并重寫的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 如何用python清洗文件中的數(shù)據(jù)

    如何用python清洗文件中的數(shù)據(jù)

    數(shù)據(jù)清洗是整個數(shù)據(jù)分析過程的第一步,就像做一道菜之前需要先擇菜洗菜一樣。 數(shù)據(jù)分析師經(jīng)常需要花費(fèi)大量的時間來清洗數(shù)據(jù)或者轉(zhuǎn)換格式,這個工作甚至?xí)颊麄€數(shù)據(jù)分析流程的80%左右的時間。今天,就來學(xué)習(xí)一下Python的數(shù)據(jù)清洗吧!
    2021-06-06
  • tensorflow中的梯度求解及梯度裁剪操作

    tensorflow中的梯度求解及梯度裁剪操作

    這篇文章主要介紹了tensorflow中的梯度求解及梯度裁剪操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python內(nèi)置函數(shù)delattr的具體用法

    Python內(nèi)置函數(shù)delattr的具體用法

    本篇文章主要介紹了Python內(nèi)置函數(shù)delattr的具體用法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • OpenCV-Python實(shí)現(xiàn)人臉磨皮算法

    OpenCV-Python實(shí)現(xiàn)人臉磨皮算法

    人臉磨皮是最基礎(chǔ)的人臉美顏效果。本文介紹了OpenCV-Python實(shí)現(xiàn)人臉磨皮算法,主要包括圖像濾波,圖像融合和圖像銳化,感興趣的可以了解一下
    2021-06-06
  • 使用python實(shí)現(xiàn)數(shù)據(jù)篩查

    使用python實(shí)現(xiàn)數(shù)據(jù)篩查

    一般數(shù)據(jù)篩查可以通過Python中的pandas庫來實(shí)現(xiàn),下面小編就來為大家介紹一下Python如何利用pandas實(shí)現(xiàn)數(shù)據(jù)篩查,感興趣的小伙伴可以一起學(xué)習(xí)一下
    2023-10-10
  • Python實(shí)現(xiàn)讀取并寫入Excel文件過程解析

    Python實(shí)現(xiàn)讀取并寫入Excel文件過程解析

    這篇文章主要介紹了Python實(shí)現(xiàn)讀取并寫入Excel文件過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • python使用pip成功導(dǎo)入庫后還是報錯的解決方法(針對vscode)

    python使用pip成功導(dǎo)入庫后還是報錯的解決方法(針對vscode)

    最近在學(xué)爬蟲,但在使用Scrapy包時,在終端通過pip裝好包以后,在pycharm中導(dǎo)入包時,依然會報錯,下面這篇文章主要給大家介紹了關(guān)于python使用pip成功導(dǎo)入庫后還是報錯的解決方法,需要的朋友可以參考下
    2022-07-07
  • python并發(fā)編程多進(jìn)程之守護(hù)進(jìn)程原理解析

    python并發(fā)編程多進(jìn)程之守護(hù)進(jìn)程原理解析

    這篇文章主要介紹了python并發(fā)編程多進(jìn)程之守護(hù)進(jìn)程原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08

最新評論