不多說了,直接上代碼:

1 #Author:Lancy Wu 2 3 product_list=[ 4 ('Iphone',5800), 5 ('Mac Pro',9800), 6 ('Bike', 800), 7 ('Watch', 10600), 8 ('Coffee', 31), 9 ('Lancy Python', 120) 10 ] #商品列表 11 shopping_list=[] #定義一個列表來存儲已購商品 12 salary=input("請輸入工資:") 13 if salary.isdigit(): #當輸入的內容為數字 14 salary=int(salary) #將輸入的工資轉換成int類型 15 while True: 16 #循環打印出所有商品列表,有兩種寫法,一般用下面一種 17 # for item in product_list: 18 # print(product_list.index(item),item) 19 for index,item in enumerate(product_list): #enumerate()這個方法是取出列表下標 20 print(index,item) 21 user_choice=input("是否購買商品?如果要購買商品請輸入商品編號:") 22 if user_choice.isdigit(): #當輸入的商品編號為數字 23 user_choice=int(user_choice) #將輸入的商品編號轉換成int類型 24 if user_choice<len(product_list) and user_choice>=0: #判斷輸入的商品編號是否存在 25 p_item=product_list[user_choice] #根據商品下標取出所購買的商品 26 if p_item[1]<=salary: #當商品的價格小於等於余額 27 shopping_list.append(p_item) #將購買的商品存儲到shopping_list[]列表中 28 salary-=p_item[1] #計算余額 29 print("您購買的商品為%s,余額為\033[31;1m%s\033[0m"%(p_item,salary)) #這個地方做了一下處理,將余額高亮顯示 30 else: #當商品的價格大於余額 31 print("\033[41;1m你的余額只剩[%s]\033[0m"%salary) #這個地方做了一下處理,將余額高亮顯示 32 else: 33 print("該商品不存在!") 34 elif user_choice=='q': #當輸入的商品編號為q時,打印購買的商品和余額並退出程序 35 print("--------以下是購買的商品--------") 36 for p in shopping_list: 37 print(p) 38 print("您的余額為:",salary) 39 exit() 40 else: 41 print("該商品不存在!")