# -*- coding:utf-8 -*-
#Author Chen #定义商品列表
List_of_commodities = [
('Iphone',6888),
('Mac Pro',12888),
('Bike',3000),
('Book',34),
('Cut',98),
] #定义一个空列表,用于存放已购商品
Purchased_goods = [] Amount_of_shopping = input("请输入您的购物金额:") if Amount_of_shopping.isdigit():
Amount_of_shopping = int (Amount_of_shopping)
while True:
for index,item in enumerate(List_of_commodities):
print(index,item)
chioce = input("请输入您选择的商品编号:")
if chioce.isdigit():
chioce = int(chioce)
if chioce < len(List_of_commodities) and chioce >= 0 :
chitem = List_of_commodities[chioce]
if chitem[1] <= Amount_of_shopping:
Purchased_goods.append(chitem)
Amount_of_shopping-=chitem[1]
print("您购买的 %s 已添加到购物车,您当前余额是 %s " %(chitem,Amount_of_shopping) )
else:
print("您的余额不足,请充值后再来!!!")
else:
print("您选择的商品不存在")
elif chioce == 'q':
print("---------------------------PURCHASED GOODS ----------------------------")
for i in Amount_of_shopping:
print(i)
print("您当前余额是",Amount_of_shopping)
exit()
else:
print("您输入有误,请核对后再次输入") '''
这是一个较为综合的练习,将之前介绍的基础知识for循环,if判断,while循环等与列表部分的知识进行了融合,希望大家多多练习。
思路
#获取商品列表,也可以使用列表索引的方式实现
# for item in List_of_commodities:
# print(List_of_commodities.index(item),item)
# 将输入的购物金额强制转换为整数
#判断用户输入的范围在商品列表内且是整数
#判断是否买的起
#将已购商品加入购物列表,即购物车,同时计算余额 isdigit()方法检查字符串是否只包含数字(全由数字组成)。
语法
以下是isdigit()方法的语法:
?
1
str.isdigit()
参数
NA
返回值
如果字符串中的所有字符都是数字,并至少有一个字符此方法返回true,否则返回false。 enumerate函数说明:
函数原型:enumerate(sequence, [start=0])
功能:将可循环序列sequence以start开始分别列出序列数据和数据下标
即对一个可遍历的数据对象(如列表、元组或字符串),enumerate会将该数据对象组合为一个索引序列,同时列出数据和数据下标
举例说明:
存在一个sequence,对其使用enumerate将会得到如下结果:
start sequence[0]
start+1  sequence[1]
start+2 sequence[2]......
'''

python 3 ---购物车练习的更多相关文章

  1. Python之购物车

    Python之购物车 msg_list = [ ['iphone',8888], ['coffe',38], ['book',90], ['Tesla',100000], ['RR',10000000 ...

  2. Python初探-购物车程序

    要求: 1,用户进入后,有欢迎语并提示用户输入本金 2.用户输入正确的内容后有购物菜单显示给用户 3.当用户的本金不足以购买商品的时候有提示余额不足并告知差额 4.成功购物后提示已购买内容和购买后的余 ...

  3. python之购物车的编写(熬夜撸代码中。。。)

    购物车的编写对于我这种不是很精通函数的小白来说,简直太难了.各种坑,各种无奈啊!不过总算也是写出来了! 不多说,直接上代码! #!/usr/bin/env python#用户名 sanjiang#密码 ...

  4. Python练习----购物车

    要求: 1.启动程序后,输入用户名密码后,如果是第一次登录,让用户输入工资,然后打印商品列表 2.允许用户根据商品编号购买商品 3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 4.可随时 ...

  5. python实现购物车

    一. 功能: 1. 用户充值余额 判断余额输入格式是否正确,正确则转换成float型. 2. 显示商品列表 根据已有商品显示所有商品的序号.商品名称.和价格供用户选择 3. 用户选择商品 判断用户输入 ...

  6. python复习购物车程序

    个人学习总结: 无他,唯手熟尔!多敲多练才是王道 python 第三课 元组的灵活运用&字符串的诸多操作 Program01 '''时间 2018年2月12日12:15:28目的 购物车程序 ...

  7. 【python】——购物车

    作业需求: 用户名和密码存放于文件中,格式为:egon|egon123 启动程序后,先登录,登录成功则让用户输入工资,然后打印商品列表,失败则重新登录,超过三次则退出程序 允许用户根据商品编号购买商品 ...

  8. Python学习-购物车程序

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

  9. python设计购物车

    设计购物车 一需求: 1.启动程序后,输入用户名密码后,如果是第一次登录,让用户输入工资,然后打印商品列表 2.允许用户根据商品编号购买商品 3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提 ...

  10. python编写购物车新写法

    用另一种方式完成购物车的功能实现 #!/usr/bin/python zijin = input("请输入资金:") if zijin.isdigit(): zijin = int ...

随机推荐

  1. JAVA 局部变量表

    1. 除了 long,double 占用两个slot 之外,其他类型均占用一个slot. 2.在内容相同的情况下, 实例方法(不加 static) 会比 类方法 (static)对占用一个局部变量位置 ...

  2. Java 中的语法糖

    百度百科对语法糖的定义 语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这 ...

  3. 配置 VirtualBox backend - 每天5分钟玩转 Docker 容器技术(75)

    Rexy-Ray 支持多种 backend,上一节我们已经安装配置了 Rex-Ray,今天演示如何配置 VirtualBox backend. 在 VirtualBox 宿主机,即我的笔记本上启动 v ...

  4. 【POJ】1704 Georgia and Bob(Staircase Nim)

    Description Georgia and Bob decide to play a self-invented game. They draw a row of grids on paper, ...

  5. hdu4027 开方,记录

    A lot of battleships of evil are arranged in a line before the battle. Our commander decides to use ...

  6. Average of Levels in Binary Tree

    Given a non-empty binary tree, return the average value of the nodes on each level in the form of an ...

  7. C# 中函数内定义函数的委托方法

    //定义委托方法Action(无返回值)Func(有返回值) //无返回值委托 Action<string> SetKeyAndValue = delegate(string key) { ...

  8. Ghost文件封装说明

    一.先列举目前Windows系统安装方式: 1.光盘安装 1.1 使用可刻录光驱将系统ISO文件刻录至DVD光盘,刻录工具比较多,QA目前使用Ultra ISO. 1.2 安装电脑从DVD光盘启动,无 ...

  9. Python GUI - Tkinter tkMessageBox

    Python GUI - Tkinter tkMessageBox: tkMessageBox模块用于显示在您的应用程序的消息框.此模块提供了一个功能,您可以用它来显示适当的消息     tkMess ...

  10. Python系列之多线程、多进程

    线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多线程的支持,Python也不例外,并且,Python的线程是真正的Posix Thread,而不是模拟出来的线程. Python的标准库提供 ...