用python簡單寫了個購物車
阿新 • • 發佈:2019-01-26
暫時只懂識別輸入的是否為整數,但是浮點數就沒辦法了
網上看了一下可以用正則來識別,暫時還沒學到,先放著了,這個比較簡單,主要是列表元素的刪除用了幾種方法,發現del比較理想
''' 購物車小程式 要求: 1.可以輸入客戶的餘額 2.列出可選物品清單,包含價格 3.可以新增到購物車 4.可以從購物車中刪除物品 5.可以隨時退出,即結算,結算後輸出購物清單和總價,若餘額不足則提示 ''' print("歡迎!\n") list=[('Iphone 8',8000,), ('Mac book',12000,), ('PS4',3000,), ('IWatch',3500,), ('Alien ware',20000)] shoppinglist=[]#購物車列表 print("-----可選購物清單----\n") for index,item in enumerate(list): print (index+1,item) def settle():#結算函式 i=0 sum=0 while i<len(shoppinglist): sum+=shoppinglist[i][1] i+=1 if sum<=balance: print('結算後餘額為:',balance-sum,'不過之後會清零哦') else: print('錢不夠呢') print('結算完畢,歡迎下次繼續使用!') while True: balance=input('輸入你的餘額:') if balance.isdigit():#暫時只支援判斷輸入的是否為整數 balance=int(balance) while True: choice=input("請根據編號選擇你需要的商品,如需要刪除請按b後根據編號選擇,退出結算請按q\n") if choice.isdigit(): choice=int(choice) if choice >=1 and choice<=len(list): shoppinglist.append(list[choice-1]) print("你已選擇:") for index,item in enumerate(shoppinglist): print(index+1,item) else: print("沒有該商品,請重新輸入") elif choice=='b': deletechoice=input('輸入你要刪除的物品編號:') if deletechoice.isdigit(): deletechoice=int(deletechoice) if deletechoice>=1 and deletechoice<=len(shoppinglist): del shoppinglist[deletechoice-1]#刪除改商品 print('刪除後的結果為:') for index,item in enumerate(shoppinglist): print(index+1,item) else: print('商品不存在購物車中.') else: print('輸入錯誤,請重試') elif choice=='q': settle()#呼叫結算函式 exit() else: print('請輸入正確的指令') else: print("請輸入一個正確的整數")