1. 程式人生 > >python學習(8)實例:寫一個簡單商城購物車的代碼

python學習(8)實例:寫一個簡單商城購物車的代碼

商品 流程圖 index blog pen 什麽 author 數字 git

要求:

1、寫一段商城程購物車序的代碼
2、用列表把商城的商品清單存儲下來,存到列表 shopping_mail
3、購物車的列表為shopping_cart
4、用戶首先輸入工資金額,判斷輸入為數字
5、用戶從商城購物清單中選擇購買物品,每次購買成功就用工資減去物品單價
6、判斷用戶金額是否足夠,不足夠提示用戶
7、如果用戶不想再繼續購物,則按Q鍵退出菜單
8、用戶退出之後,將用戶購買的清單打印出來。
9、盡量學習帶顏色輸出幾個重點信息字符。

 1 # Author:show530
 2 
 3 shopping_mail = [
 4     (Iphone,5800),
 5     (Mac Pro
,9800), 6 (Bike,800), 7 (Watch,10600), 8 (Coffee,31), 9 (Alex Python,120), 10 ] 11 shopping_cart = [] 12 13 salary=input("請輸入您的工資金額:") 14 if salary.isdigit(): 15 salary=int(salary) 16 while True: 17 for index,item in enumerate(shopping_mail): 18 print(index,item)
19 enter_number=input("請輸入您要購買的商品編號:") 20 if enter_number.isdigit(): 21 enter_number=int(enter_number) 22 if enter_number>-1 and enter_number<len(shopping_mail): 23 p_item=shopping_mail[enter_number] 24 if p_item[1]<=salary: 25
shopping_cart.append(p_item) 26 salary-=p_item[1] 27 print("您選購的商品金額是:\033[31m%s\033[0m,您的工資余額為:\033[31m%s\033[0m" % (p_item, salary)) 28 else: 29 print("您的余額不足,無法繼續購買!") 30 else: 31 print("您輸入的商品編號不存在:") 32 elif enter_number=="q": 33 print("\033[0;32;40m------您本次購物清單為-------\033[0m") 34 for p in shopping_cart: 35 print(p) 36 print("您的余額為:\033[31m%s\033[0m"%(salary)) 37 exit() 38 else: 39 print("\033[31m輸入有誤,必須輸入數字或者正整數!\033[0m")

這個程序花了我較多時間,差不多一個晚上都在反復思考這個。

1、salary.isdigit()還不是太熟悉,這個方法的作用是檢查用戶輸入的是否為數字,不過不知道為什麽,輸入浮點數也會報錯。負數貌似也會報錯。這裏先囫圇吞棗一下。

2、對於多層嵌套循環還不熟悉,開始一直輸出出現問題,主要原因就是嵌套格式不對。以後寫程序之前要註意畫一下流程圖。

3、學習了顏色輸出的用法。

python學習(8)實例:寫一個簡單商城購物車的代碼