Python 练习题_简易购物车

Posted yangdadahome

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 练习题_简易购物车相关的知识,希望对你有一定的参考价值。

命题:

  1. 启动程序后,让用户输入工资,然后打印商品列表
  2. 允许用户根据商品编号购买商品
  3. 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 
  4. 可随时退出,退出时,打印已购买商品和余额

伪代码

shopping_car = []
balance = input usrs balance
(check parameters legality)

while TRUE {
    show commodity list
    choice = user input
    if choice.isdigit {
        if choice > number of commodity{
            print("invalid input")
            continue
        }
        item = commodity[choice]
        if item.price < balance {
            shopping_car.append(item)
            balance -= item.price
            print("item add success, balance:%d")
        }
        else{
            print("balance is not enough!")
        }
    }
    else{
        if choice == q{
            print("your shopping things & balance")
            break
        }else {
            print("invalid input")
        }
    }
}

 

源码:

#! /usr/local/bin/python3.5

import sys

commodity = [
    ("iphone", 5888),
    ("MacBook", 12888),
    ("StarBark", 60),
    ("Bike", 1000)
]

shopping_car = []

while True:
    balance = input("input your balance:")
    if balance.isdigit():                            #检查是不是整形
        balance = int(balance)                        #类型转换整形
        break
    else:
        if balance == q:
            sys.exit(0)
        else:
            print("----->Invalied input!!!")


while True:
    for index, cl in enumerate(commodity):    #对于list,该函数将其转换为索引序列
        print("\n", index, cl)
    uc = input("Input your choice:")    #输入选择
    if uc.isdigit():
        uc = int(uc)
        if uc < len(commodity) and uc >=0:
            item = commodity[uc]
            if item[1] <= balance:
                shopping_car.append(item)
                balance -= item[1]
                print("%s add shopping car sucess!"%item[0])
            else:
                print("your balance is not enough!")
        else:
            print("------->Invalid input!")
    elif uc == q:
        print("----------shopping list-----------")
        for c in shopping_car:
            print(c)
        print("your balance:%d"%balance)
        break;
    else:
        print("------->Invalid option")

 

以上是关于Python 练习题_简易购物车的主要内容,如果未能解决你的问题,请参考以下文章

python简易购物车练习

Python学习第二周-简易购物车练习

python练习_购物车(简版)

Python小练习008

python_day06_数据类型(元组字典)与简易购物车

python路5__购物车小程序练习