最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

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

定義一個(gè)商品類

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

定義一個(gè)匯總類

#定義一個(gè)匯總類
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)貨價(jià)格:%.2f ,賣出價(jià)格:%.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("===請輸入操作序號(hào):")) ? ? ? ? ? ?
? ? ? ? ? ? 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)貨價(jià)格:"))
? ? ? ? ? ? goods_cout = float(input("請輸入商品出貨價(jià)格:"))
? ? ? ? ? ? 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("小可愛,輸入錯(cuò)誤!")
? ? #修改
? ? 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)貨價(jià)格:"))
? ? ? ? ? ? goods_cout = float(input("請輸入修改后商品出貨價(jià)格:"))
? ? ? ? ? ? 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("請輸入需要?jiǎng)h除的商品名稱:")
? ? ? ? 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("賣出個(gè)數(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)貨總價(jià)、銷售總價(jià)等。
? ? def Summary(self):
? ? ? ? for goods in self.js:
? ? ? ? ? ? print (str(goods))
? ? ? ? print("售出的物品進(jìn)貨總價(jià):",end="")
? ? ? ? x=0
? ? ? ? for goods in self.js:
? ? ? ? ? ? x+=float(goods.gcin)
? ? ? ? print(x)
? ? ? ? print("售出的物品銷售總價(jià):",end="")
? ? ? ? y=0
? ? ? ? for goods in self.js:
? ? ? ? ? ? y+=float(goods.gcout)
? ? ? ? print(y)
? ? ? ? print("利潤:",y-x);```

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

相關(guān)文章

  • 原理解析為什么pydantic可變對(duì)象沒有隨著修改而變化

    原理解析為什么pydantic可變對(duì)象沒有隨著修改而變化

    這篇文章主要介紹了為什么pydantic可變對(duì)象沒有隨著修改而變化的原因解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • 通過python掃描二維碼/條形碼并打印數(shù)據(jù)

    通過python掃描二維碼/條形碼并打印數(shù)據(jù)

    這篇文章主要介紹了通過python掃描二維碼/條形碼并打印數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Python數(shù)學(xué)建模PuLP庫線性規(guī)劃進(jìn)階基于字典詳解

    Python數(shù)學(xué)建模PuLP庫線性規(guī)劃進(jìn)階基于字典詳解

    在大規(guī)模的規(guī)劃問題中,這樣逐個(gè)定義變量和設(shè)置模型參數(shù)非常繁瑣,效率很低。Pulp 庫提供了一種快捷方式,可以結(jié)合 Python語言的循環(huán)和容器,使用字典來創(chuàng)建問題
    2021-10-10
  • python 讀取二進(jìn)制 顯示圖片案例

    python 讀取二進(jìn)制 顯示圖片案例

    這篇文章主要介紹了python 讀取二進(jìn)制 顯示圖片案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Pytorch 的 LSTM 模型的示例教程

    Pytorch 的 LSTM 模型的示例教程

    本文給大家介紹了Pytorch 的 LSTM 模型的示例教程,文中結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2023-06-06
  • python微信跳一跳系列之棋子定位像素遍歷

    python微信跳一跳系列之棋子定位像素遍歷

    這篇文章主要為大家詳細(xì)介紹了python微信跳一跳系列之棋子定位之像素遍歷,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • python進(jìn)行數(shù)據(jù)預(yù)處理的4個(gè)重要步驟

    python進(jìn)行數(shù)據(jù)預(yù)處理的4個(gè)重要步驟

    在數(shù)據(jù)科學(xué)項(xiàng)目中,數(shù)據(jù)預(yù)處理是最重要的事情之一,本文詳細(xì)給大家介紹python進(jìn)行數(shù)據(jù)預(yù)處理的4個(gè)重要步驟:拆分訓(xùn)練集和測試集,處理缺失值,處理分類特征和進(jìn)行標(biāo)準(zhǔn)化處理,需要的朋友可以參考下
    2023-06-06
  • cv2.getStructuringElement()函數(shù)及開、閉、腐蝕、膨脹原理講解

    cv2.getStructuringElement()函數(shù)及開、閉、腐蝕、膨脹原理講解

    getStructuringElement()函數(shù)可用于構(gòu)造一個(gè)特定大小和形狀的結(jié)構(gòu)元素,用于圖像形態(tài)學(xué)處理,這篇文章主要介紹了cv2.getStructuringElement()函數(shù)及開、閉、腐蝕、膨脹原理講解的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • Python爬蟲利器之PhantomJS詳解

    Python爬蟲利器之PhantomJS詳解

    這篇文章主要介紹了Python爬蟲利器之PhantomJS詳解,PhantomJS是一個(gè)基于WebKit的無頭瀏覽器,它沒有圖形界面,但是它可以像傳統(tǒng)的瀏覽器一樣訪問web頁面,并返回已呈現(xiàn)的內(nèi)容,PhantomJS是一種命令行工具,可以用它來測試和爬取Web頁面,需要的朋友可以參考下
    2023-09-09
  • python矩陣運(yùn)算,轉(zhuǎn)置,逆運(yùn)算,共軛矩陣實(shí)例

    python矩陣運(yùn)算,轉(zhuǎn)置,逆運(yùn)算,共軛矩陣實(shí)例

    這篇文章主要介紹了python矩陣運(yùn)算,轉(zhuǎn)置,逆運(yùn)算,共軛矩陣實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05

最新評(píng)論

大丰市| 贡觉县| 怀宁县| 宝丰县| 翁牛特旗| 晋城| 永川市| 商丘市| 于田县| 泰宁县| 彭水| 安庆市| 昭通市| 阿克| 安义县| 揭阳市| 长垣县| 安远县| 望江县| 铜陵市| 四平市| 沙田区| 台东县| 巨鹿县| 西青区| 大方县| 江西省| 平阴县| 长丰县| 龙口市| 吴堡县| 新田县| 错那县| 怀来县| 广安市| 河津市| 贵阳市| 阳曲县| 荆州市| 五指山市| 武乡县|