Python实现购物车购物小程序

yipeiwu_com6年前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复制文件的一个例子。 # -*- coding: utf-8 -*- #程序用来拷贝文件并输出图片采集日期等其他信息到Exce...

np.dot()函数的用法详解

基本简介 dot函数为numpy库下的一个函数,主要用于矩阵的乘法运算,其中包括:向量内积、多维矩阵乘法和矩阵与向量的乘法。 1. 向量内积 向量其实是一维的矩阵,两个向量进行内积运...

Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息示例

Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息示例

本文实例讲述了Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息。分享给大家供大家参考,具体如下: 进行图像绘制有时候需要设定坐标轴以及图像标题等信息,示例代码如下...

python实现的发邮件功能示例

python实现的发邮件功能示例

本文实例讲述了python实现的发邮件功能。分享给大家供大家参考,具体如下: 一 简介 本应用实现给网易邮箱发送邮件 二 代码 import smtplib import tkint...

Python队列的定义与使用方法示例

Python队列的定义与使用方法示例

本文实例讲述了Python队列的定义与使用方法。分享给大家供大家参考,具体如下: 虽然Python有自己的队列模块,我们只需要在使用时引入该模块就行,但是为了更好的理解队列,自己将队列实...