中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何實現電子產品商店

發布時間:2021-04-07 11:41:01 來源:億速云 閱讀:163 作者:小新 欄目:開發技術

這篇文章主要介紹python如何實現電子產品商店,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

利用python實現以下功能:基于python下的電子產品商店

電子產品商店

v0.1

請選擇商品:

=============================

1       Apple Watch          ¥3299.00

--------------------------------------

2       AirPods           ¥1288.00

--------------------------------------

3       Home Pod            ¥1299.00

--------------------------------------

請輸入商品Id(回車去結賬,0清空購物車):1

--------------------------------------

Id:1

名稱:Apple Watch

價格:¥3299.00

庫存:100

請輸入購買數量:2

--------------------------------------

Apple Watch(¥3299) * 2 =¥6598.00

--------------------------------------

總金額:¥6598.00

請輸入商品Id(回車去結賬,0清空購物車):2

--------------------------------------

Id:2

名稱:AirPods

價格:¥1288.00

庫存:100

請輸入購買數量:2

--------------------------------------

Apple Watch(¥3299.00) * 2 =¥6598.00

AirPods(¥1288.00) * 2      =¥2576.00

--------------------------------------

總金額:¥9174.00

1.首先,先在ProcessOn上畫出一個基本的流程圖,使自己有一個清晰的邏輯,如何去寫這個項目,流程圖如下:

python如何實現電子產品商店

2.其次,再列舉出來這個項目中需要用到的類都有哪些,各自包含的屬性是什么以及定義的都有哪些函數。然后在ProcessOn中 創建一個UML模板(從上往下依次是類名,屬性,函數名),模板如下:

python如何實現電子產品商店

3.根據流程圖和UML模板編寫程序,代碼如下:

(1)定義一個類名為Goods的類       

# 商品類
class Goods(object):
 def __init__(self,name,price,stock):
 self.id = 0
 self.name = name
 self.price = price
 self.stock = stock
 # 當打印對象時,輸出的內容
 def __str__(self):
 return 'id:%s\n' \
  '名稱:%s\n' \
  '價格:%s\n' \
  '庫存:%s\n' % (self.id,self.name,self.price,
    self.stock)
 
 
if __name__ == '__main__':
 goods = Goods('Apple pods',2999,100)
 print(goods)
 goods2 = Goods('Apple Watch',3666,100)
 print(goods2)

(2)定義一個類名為Cartitem的類 

from goods import Goods
 
class CartItem(object):
 # 購物車商品
 def __init__(self,goods,count):
 self.goods = goods
 self.count = count
 
 def __str__(self):
 # %f是小數類型的占位符
 return '%s(¥%.2f)*%s' % (self.goods.name,
     self.goods.price,self.count)
 
 # 計算商品小計
 def amout(self):
 return self.goods.price * self.count
 
 
if __name__ == '__main__':
 goods = Goods('Apple pods',2999,100)
 # 創建購物車商品對象,需要傳入一個商品對象
 item = CartItem(goods,2)
 money = item.amout()
 print(money)

(3)最后把前兩個類整合一下,實現具體的功能:      

from goods import Goods
from cart import CartItem
 
class Shop(object):
 """商店"""
 def __init__(self):
 # 存儲所有商品
 self.shops = []
 # 存儲購物車商品
 self.cart = []
 # 加載商品
 self.load()
 
 def load(self):
 """加載商品"""
 self.add(Goods('Apple Watch', 3299, 100))
 self.add(Goods('AirPods', 1288, 100))
 self.add(Goods('Home Pod', 1299, 100))
 self.add(Goods('iPhone X', 6288, 100))
 
 def add(self, good):
 """
 設置新商品的id,添加到列表中
 :param good: 新商品
 :return: None
 """
 good.id = len(self.shops) + 1
 self.shops.append(good)
 
 def print_line(self):
 
 print('-'*50)
 
 def print_double_line(self):
 print('='*50)
 
 def list(self):
 """列出所有商品"""
 print('請選擇商品:')
 self.print_double_line()
 # 遍歷商品列表
 for g in self.shops:
 
  print('%s %s %s' % (g.id, g.name, g.price))
  self.print_line()
 
 def list_cart(self):
 """展示購物車商品,計算總價"""
 self.print_line()
 total = 0.0
 for item in self.cart:
  print('%s =¥%s' % (item, item.amout()))
  total += item.amout()
 self.print_line()
 print('總金額:¥%.2f' % total)
 
 def add_to_cart(self):
 """添加商品到購物車"""
 print('\n')
 g_id = input('請輸入商品Id(回車去結賬,0清空購物車):')
 
 if len(g_id) == 0:
  # 結賬
  total = 0.0
  for item in self.cart:
 
  total += item.amout()
  self.print_line()
  print('請支付:¥%.2f' % total)
 
  # 清空購物車
  self.cart.clear()
  print('支付成功!')
 
 elif g_id == '0':
  self.cart.clear()
  print('購物車已清空!')
 else:
  # 計算商品索引
  idx = int(g_id) - 1
  # 取出商品
  goods = self.shops[idx]
  self.print_line()
  print(goods)
 
  count = int(input('請輸入購買數量:'))
  # 判斷數量是否大于庫存量
  while count > goods.stock:
  count = int(input('沒有這么多商品,請重新輸入:'))
 
  # 如果商品已經在購物車中,修改商品數量
  # 變量表示在購物車中是否有這個商品
  is_exsts = False
  for item in self.cart:
  if item.goods == goods:
   # 說明在購物車中有該商品
   is_exsts = True
   item.count += count
   # 減少庫存
   goods.stock -= count
 
  # 如果執行到這,is_exsts的值還是False,說明購物車中沒有該商品
  if is_exsts == False:
  # 把商品添加到購物車
  goods.stock -= count
  self.cart.append(CartItem(goods, count))
 
  # 展示購物車商品,計算總價
  self.list_cart()
 
 def run(self):
 """運行應用程序"""
 print('智游電子產品商店')
 print('v1.0')
 print('\n')
 
 self.list()
 
 while True:
  self.add_to_cart()
 
shop = Shop()
shop.run()

以上是“python如何實現電子產品商店”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

漯河市| 噶尔县| 台湾省| 亚东县| 康乐县| 武胜县| 台州市| 娄烦县| 民乐县| 长子县| 拉萨市| 霍邱县| 南岸区| 台南县| 丹阳市| 巫溪县| 温泉县| 龙井市| 山东| 嘉定区| 兴宁市| 黎城县| 阿鲁科尔沁旗| 姚安县| 日喀则市| 广南县| 辉县市| 江津市| 南靖县| 临泉县| 原平市| 湖口县| 建昌县| 佛冈县| 五原县| 仁布县| 临邑县| 商洛市| 逊克县| 罗田县| 班戈县|