python练习---购物车
生活随笔
收集整理的這篇文章主要介紹了
python练习---购物车
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
購物車
功能要求:
要求用戶輸入總資產,例如:2000
顯示商品列表,讓用戶根據序號選擇商品,加入購物車
購買,如果商品總額大于總資產,提示賬戶余額不足,否則,購買成功。
購買成功,打印購買的商品列表
擴展:
登錄驗證 1 user_status = False 2 def login(): 3 name_list = [ 4 {'username': '張三', 'password': '123'}, 5 {'username': '李四', 'password': '456'}, 6 {'username': '王二', 'password': '789'}, 7 ] 8 global user_status 9 if user_status == False: 10 username = input("請輸入用戶名:").strip() 11 password = input("請用戶密碼:").strip() 12 for i in name_list: 13 if username == i["username"] and password == i["password"]: 14 print("login successfully") 15 user_status = True 16 break 17 else: 18 print("User name or password error.") 19 exit() 20 else: 21 print("用戶已登錄,驗證成功") 22 23 24 def shopping(): 25 login() 26 list_cart = [] 27 goods = [{"name": "電腦", "price": 1999}, 28 {"name": "鼠標", "price": 10}, 29 {"name": "游艇", "price": 20}, 30 {"name": "美女", "price": 998}, 31 ] 32 gongzi = input("請輸入您的工資:") 33 while not gongzi.isdigit(): 34 print("輸入內容只能由數字組成") 35 gongzi = input("輸入有誤,請輸入正確格式:") 36 gongzi = int(gongzi) 37 while True: 38 print("商品列表".center(50, "#")) 39 print("編號".center(8, " "), "名稱".center(30, " "), "價格".ljust(10, " ")) 40 print("".center(53, "-")) 41 for i in goods: 42 print(str(goods.index(i)).center(10, " "), str(i["name"]).center(30, " "), str(i["price"]).ljust(10, " ")) 43 print("".center(53, "-")) 44 bianhao = input("請您輸入商品編號或q:") 45 if bianhao.isdigit(): 46 bianhao = int(bianhao) 47 if bianhao >= 0 and bianhao < int(len(goods)): 48 if (gongzi - goods[bianhao]["price"]) >= 0: 49 list_cart.append(goods[bianhao]) 50 gongzi -= goods[bianhao]["price"] 51 print("\033[32;1m您的預算還有%d\033[0m" % gongzi) 52 else: 53 print("\033[1;31;1m余額不足啦...\033[0m") 54 else: 55 print("您輸入的商品不存在") 56 elif bianhao == "q": 57 break 58 else: 59 print("\033[32;1m您輸入有誤\033[0m") 60 print("\033[32;1m還剩%d元\033[0m" % gongzi) 61 print("購物車詳情".center(50,"#")) 62 print("編號".center(8, " "), "名稱".center(30, " "), "價格".ljust(10, " ")) 63 print("".center(53, "-")) 64 for i in list_cart: 65 print(str(list_cart.index(i)).center(10, " "), str(i["name"]).center(30, " "), str(i["price"]).ljust(10, " ")) 66 print("".center(53, "-")) 67 68 shopping()
功能要求:
要求用戶輸入總資產,例如:2000
顯示商品列表,讓用戶根據序號選擇商品,加入購物車
購買,如果商品總額大于總資產,提示賬戶余額不足,否則,購買成功。
購買成功,打印購買的商品列表
擴展:
登錄驗證 1 user_status = False 2 def login(): 3 name_list = [ 4 {'username': '張三', 'password': '123'}, 5 {'username': '李四', 'password': '456'}, 6 {'username': '王二', 'password': '789'}, 7 ] 8 global user_status 9 if user_status == False: 10 username = input("請輸入用戶名:").strip() 11 password = input("請用戶密碼:").strip() 12 for i in name_list: 13 if username == i["username"] and password == i["password"]: 14 print("login successfully") 15 user_status = True 16 break 17 else: 18 print("User name or password error.") 19 exit() 20 else: 21 print("用戶已登錄,驗證成功") 22 23 24 def shopping(): 25 login() 26 list_cart = [] 27 goods = [{"name": "電腦", "price": 1999}, 28 {"name": "鼠標", "price": 10}, 29 {"name": "游艇", "price": 20}, 30 {"name": "美女", "price": 998}, 31 ] 32 gongzi = input("請輸入您的工資:") 33 while not gongzi.isdigit(): 34 print("輸入內容只能由數字組成") 35 gongzi = input("輸入有誤,請輸入正確格式:") 36 gongzi = int(gongzi) 37 while True: 38 print("商品列表".center(50, "#")) 39 print("編號".center(8, " "), "名稱".center(30, " "), "價格".ljust(10, " ")) 40 print("".center(53, "-")) 41 for i in goods: 42 print(str(goods.index(i)).center(10, " "), str(i["name"]).center(30, " "), str(i["price"]).ljust(10, " ")) 43 print("".center(53, "-")) 44 bianhao = input("請您輸入商品編號或q:") 45 if bianhao.isdigit(): 46 bianhao = int(bianhao) 47 if bianhao >= 0 and bianhao < int(len(goods)): 48 if (gongzi - goods[bianhao]["price"]) >= 0: 49 list_cart.append(goods[bianhao]) 50 gongzi -= goods[bianhao]["price"] 51 print("\033[32;1m您的預算還有%d\033[0m" % gongzi) 52 else: 53 print("\033[1;31;1m余額不足啦...\033[0m") 54 else: 55 print("您輸入的商品不存在") 56 elif bianhao == "q": 57 break 58 else: 59 print("\033[32;1m您輸入有誤\033[0m") 60 print("\033[32;1m還剩%d元\033[0m" % gongzi) 61 print("購物車詳情".center(50,"#")) 62 print("編號".center(8, " "), "名稱".center(30, " "), "價格".ljust(10, " ")) 63 print("".center(53, "-")) 64 for i in list_cart: 65 print(str(list_cart.index(i)).center(10, " "), str(i["name"]).center(30, " "), str(i["price"]).ljust(10, " ")) 66 print("".center(53, "-")) 67 68 shopping()
?
轉載于:https://www.cnblogs.com/watchslowly/p/8933842.html
總結
以上是生活随笔為你收集整理的python练习---购物车的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用var_export 写缓存配置
- 下一篇: ECMAScript 2016,2017