Python实现购物车购物小程序

yipeiwu_com5年前Python基础

概要

按理说,我们入门的第一个小程序都应该是Hello World。因为比较简单,我这也就不做过多的演示 了。
下面是我写的一个小程序。主要用于练习Python的基本语法,以及入门。

主要实现功能

  • 要求用户输入自己预期消费额度.
  • 展示现有商品信息,要求用户选择
  • 用户选择对应商品标号后(注意判断是否超出预期消费额度等操作),保存到购物车
  • 用户退出后显示购物车信息以及剩余额度情况

代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
@author: 烽火
@license: Apache Licence
@file: shopping.py
@time: 6/16/17 10:05 AM
"""

goods = [
  ("IPhone", 5800),
  ("Watch", 2000),
  ("MacBook", 12000)]

goods_cart = []

mybudget = input("请输入您的预算:")

# 不考虑是小数的情况
while not mybudget.isdigit():
  mybudget = input("输入有误,请重新输入您的预算:")
mybudget = int(mybudget);

while True:
  print("商品列表".center(50, "-"))
  print("编号".center(8, " "), "名称".ljust(30, " "), "价格".ljust(10, " "))
  for i in enumerate(goods):
    print(str(i[0]).center(10, " "), str(i[1][0]).ljust(31, " "), str(i[1][1]).ljust(10, " "))

  user_choose = input("请输入您的选择:")

  if user_choose.isdigit():
    user_choose = int(user_choose)
    if user_choose >= 0 and user_choose < len(goods):
      if (mybudget - goods[user_choose][1]) >= 0:
        goods_cart.append(goods[user_choose])
        mybudget -= goods[user_choose][1]
        print("预算还有%d" % mybudget)
      else:
        print("预算不够啦~")
    else:
      print("不存在该商品~")

  elif user_choose == 'q':
    break

  else:
    print("您的输入有误~")

print("预算还剩%d了" %(mybudget))
print("购物车商品信息".center(50, "-"))

for i in enumerate(goods_cart):
    print(str(i[0]).center(10, " "), str(i[1][0]).ljust(31, " "), str(i[1][1]).ljust(10, " "))


运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现翻转数组功能示例

本文实例讲述了Python实现翻转数组功能。分享给大家供大家参考,具体如下: 题目描述 给定一个长度为n的整数数组a,元素均不相同,问数组是否存在这样一个片段,只将该片段翻转就可以使整个...

python 算法 排序实现快速排序

QUICKSORT(A, p, r)是快速排序的子程序,调用划分程序对数组进行划分,然后递归地调用QUICKSORT(A, p, r),以完成快速排序的过程。快速排序的最差时间复杂度为O...

pytorch的梯度计算以及backward方法详解

pytorch的梯度计算以及backward方法详解

基础知识 tensors: tensor在pytorch里面是一个n维数组。我们可以通过指定参数reuqires_grad=True来建立一个反向传播图,从而能够计算梯度。在pytorc...

python3中利用filter函数输出小于某个数的所有回文数实例

我就废话不多说了,直接上代码吧! def _int_iter(): """根据回文数的定义。首先生成一个从0开始的整数无限序列""" n = 0 while True:...

linux环境中没有网络怎么下载python

有时候在无法联网的情况下需要搭建环境,且必须使用之前的环境,因为你的代码需要在同样的环境下运行。这样方便开发 方法一: 1.下载指定的包到指定文件夹。 pip list #查看安装...