python购物车作业思路

自学python,购物车作业思路

           小白0基础自学python第二天,在自学视频最后留了一道购物车的作业,分享下完成的思路

需求

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

1、创建商品列表

product_list = [
    ('Iphone',5800),
    ('Mac Pro',9800),
    ('Bike',800),
    ('Watch',10600),
    ('Coffee',31),
    ('Alex Python',120),
]

这里需要使用嵌套的列表
2、创建输入工资的变量

salary = input("Input your salary:")
if salary.isdigit():
    salary = int(salary)

这里需要注意的是判断输入的是否为数字,是的话还需要将字符串表示的数字转换为int类型的整数

3、整个购物是一个循环的过程,所以需要一直循环

while True:

4、打印商品列表

 for index,item in enumerate(product_list):
            print(index,item)

使用 enumerate(product_list) 这个方法提取列表的索引,并打印出来
5、创建输入需要购买商品的编码

user_choice = input("选择要买商品的编码:")
        if user_choice.isdigit():
            user_choice = int(user_choice)

和输入工资时一样同样需要判断是否为数字

6、判断输入的数字是否在列表的长度之内或者大于等于0,并创建一个购买商品的对象

if user_choice < len(product_list) and user_choice >=0:
                p_item = product_list[user_choice]

7、判断工资是否足够购买商品,需要创建一个空白的列表shopping_list来装购买的商品

if p_item[1] <= salary: 
                    shopping_list.append(p_item)
                    salary -= p_item[1]
                    print("添加购买 %s ,还剩余额为:%s" %(p_item,salary) )
                else:
                    print("你的余额只剩[%s]啦,不足购买" % salary)

8、输入q指令的时候退出购物并打印购物清单余额

elif user_choice == 'q':
            print("--------shopping list------")
            for p in shopping_list:
                print(p)
            print("Your current balance:",salary)
            exit()

9、补齐一些else结果这都比较简单了 。

总结
大概完成的还是比较顺利的就是有一些细节的 比如:输入工资 和 输入购买编号 判断是否为数字 和转换int类型的那一点是在别人帮助下完成的 还有就是enumerate(product_list) 这个方法的使用也是别人帮助完成的。能够顺利的完成对我学习python提高了很大的信心 希望继续努力加油!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值