# !/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hugolinhj #ps:字符编码是UTF-8,单独DOS运行需要删除字体改变代码。 #练习,定义商品清单,客户输入余额(整数),选择商品后,扣除金额。 product_list = [ ('iphone',5800), ('Mac_pro',9800), ('bike',800), ('coffee',30), ('Watch',10600), ('MingYW',10000), ] shopping=[] #定义两个变量,product_list:商品清单。shopping:购物清单。 salary = input('Input your Salary:') #定义变量salary,用户金额。 count = 3 #定义变量count,为计算输入多次错误字符后,退出。 while count >0: if salary.isdigit(): #判断字符是否为整数,或字符串可否转整数。 salary = int(salary) #转int整数类型 while True: for item in enumerate(product_list): #依次循环商品清单 #enumerate()显示列表的下标 #上句等于 for item in product_list: #print (product_list.index(item),item) print(item) user_choice = input('需要的商品>>>') #定义变量user_choice为用户选择的序号‘下标'. if user_choice.isdigit(): user_choice = int(user_choice) if user_choice < len(product_list) and user_choice >=0: #len(product_list)检查product_list的长度为6。判断,比较。 p_item = product_list[user_choice] #定义变量p_item为所选商品。 if p_item[1] <= salary: #比较p_item下标1的数值,与salary用户余额 shopping.append(p_item) #添加商品入变量p_item入shopping列表中 salary -=p_item[1] #余额减p_item下标1的数值 print('添加 %s 加入购物车,你得余额为 \033[31:1m%s\033[0m'%(p_item,salary)) # \033[31:1m‘%s’\033[0m ‘%s’改字体颜色为红色、加粗。 # \033[41:1m‘%s’\033[0m ‘%s’改字体颜色为背景红色、加粗。 # \033[33:1m‘%s’\033[0m ‘%s’改字体颜色为背景黄色、加粗。 else:print("\033[31:1m你的余额不足,请重新输入!!或者输入q\033[0m") else:print('你输入的有误!请重新输入。请按‘q’退出!') elif user_choice == 'q': if len(shopping) == 0: print ('你未购买商品!谢谢光临!') print('你的余额:%s'%(salary)) exit () else: print('你购买商品如下:') for p in shopping: print(p) print('你的余额:%s'%(salary)) exit() else: print('你输入的有误!请重新输入,') else:break elif salary=='q': print('感谢你得使用!') exit() else: print('你输入的有误!请重新输入或者输入"q"退出!') print('你剩余机会还有:',count,'次') salary=input('请重新输入>>>') count -= 1 #巡检次数减1 else:print('感谢你得使用!') shopping= Are you want? iphone = 5800 mac_pro = 12000 coffee = 30 bike = 800 for i in shopping: print(i) '''
当前位置:
首页 > temp > python入门教程 >
-
Python No.13 之练习(购物车)语句while、for、list等
出处:https://www.cnblogs.com/mingyw/p/14095407.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数