python购物车程序的简单程序优化版

# Author:barry allen
# -*- coding:utf-8 -*-
shop_list=[("IPHONE",8000),("MI",5000),("NOKIA",1200),("HUAWEI",2400),("CHINA",4100)]
salary=input("请输入您的存款:")
if salary.isdigit():
    salary=int(salary)
bought_list=[]    #已购买手机的清单
while True:
    for index,data in enumerate(shop_list):
        print(index,data)
    user_choice=input("请输入您需要购买的手机编号,若您不想购买,请输入q退出系统!")
    if user_choice.isdigit():
            user_choice=int(user_choice)
            if user_choice>=0 and user_choice<len(shop_list):
               tem=shop_list[user_choice]                   #tem为临时变量,用于比较是否能继续购买
               if tem[1]<=salary:
                salary-=tem[1]
                bought_list.append(tem)                     #调用列表函数.append(),此时传进去的元素是一个整体,作为新列表的子列表
                print("已完成购买,您当前的余额为\033[41;1m%s\033[0m" % (salary))
               else:
                     print("余额不足,请重新选择!")
            else:
                print("没有该手机编号,请重新选择!")
    elif user_choice==‘q‘:
            print("--------已购买的手机清单---------")
            for data in bought_list:
                print(data)
            print("您的余额为\033[31;1m%s\033[0m" % (salary))
            print("谢谢购买,欢迎下次光临!")
            exit()
    else:
            print("输入错误的信息,请重新选择")

小结:

1.输出列表带编号(下标)的方法:

for index,data in enumerate(shop_list)

print(index,data)

其中,index,data分别为编号(下标)和元素,相比于之前的购物车小程序,省去了在列表中标出各个手机产品的编号]

2.高亮表示法的标准格式以及参数;

#高亮:
标准格式为 ‘\033[?;?;?m%s\033[0m‘ % (xxx)
其中,问号为以下三种格式中分别任选一种
特殊显示方式 :0(默认值)、1(高亮)、22(非粗体)、4(下划线)、24(非下划线)、 5(闪烁)、25(非闪烁)、7(反显)、27(非反显)
字体颜色:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋 红)、36(青色)、37(白色)
背景色:40(黑色)、41(红色)、42(绿色)、 43(黄色)、44(蓝色)、45(洋 红)、46(青色)、47(白色)
如以下程序
test="this is a test"
print(‘\033[31;1;42m%s\033[0m‘ %(test))   #其中,三种参数的顺利并无作要求
print(‘\033[34;1;42m你好\033[0m‘)         #也可以写中文,不需要引用字符串变量

3.判断是否为数字的函数,并将其转换为整数型

#判断是否为数字,*.isdigit()
salary=input(salary)
if salary.isdigit():
   salary=int(salary)          #如果为数字,则转换为整数类型;

原文地址:https://www.cnblogs.com/god-for-speed/p/10858668.html

时间: 2024-10-09 13:19:24

python购物车程序的简单程序优化版的相关文章

键值转换--复杂按键事件识别程序(链接层-优化版)

复杂按键事件识别程序(链接层-优化版) 本文相对于键值转换--复杂按键事件识别程序(链接层)文章中所述的按键事件转换程序进行优化(原来的代码太多,太杂,不易于维护). 优点:代码简洁,易于修改和阅读. 缺点:无法区分某一特殊按键在不同的系统状态下的按键时间(比如同一个键在不同的情况下可以长按3s或则5s),连按和长按不能同时存在(也可以加条件进行区分). 复杂按键包括多个按键的单按事件.长按事件.连按事件.组合按键事件等... 单按事件在按下键松开时判定,其它按键情况在达到规定的时间后触发相应按

树莓派用Python写几个简单程序5:用socket传图像

使用socket 传递摄像头图像到pc. 确定安装好opencv和python后,确定自己作为服务器端设备ip: 首先是服务器端 server.py: import socket import cv2 import numpy address = ('127.0.0.1', 8002) s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind(address) s.listen(True) def recvall(sock, cou

Python常用的库简单介绍一下

Python常用的库简单介绍一下fuzzywuzzy ,字符串模糊匹配. esmre ,正则表达式的加速器. colorama 主要用来给文本添加各种颜色,并且非常简单易用. Prettytable 主要用于在终端或浏览器端构建格式化的输出. difflib ,[Python]标准库,计算文本差异 . Levenshtein ,快速计算字符串相似度. Chardet 字符编码探测器,可以自动检测文本.网页.xml的编码. shortuuid ,一组简洁URL/UUID函数库. ftfy ,Uni

python学习之最简单的用户注册及登录验证小程序

文章都是从我的个人博客上粘贴过来的哦,更多内容请点击 http://www.iwangzheng.com 正如很多同学所知道的,楼主开始学习python了,前进的道路曲曲折折,有荆棘也有陷阱,从最简单的小程序写起,每天练习,将python进行到底. 有一点比较别扭的就是python的换行之后空四个空格,ruby都是两个,并且python在方法和循环语句的第一句都要加冒号 mysql> show create table user; mysql> alter table user add sal

Python写的网络爬虫程序(很简单)

Python写的网络爬虫程序(很简单) 这是我的一位同学传给我的一个小的网页爬虫程序,觉得挺有意思的,和大家分享一下.不过有一点需要注意,要用python2.3,如果用python3.4会有些问题出现. python程序如下: import re,urllib strTxt="" x=1 ff=open("wangzhi.txt","r") for line in ff.readlines(): f=open(str(x)+".txt&

python学习之最简单的获取本机ip信息的小程序

文章是从我的个人博客粘贴过来的,大家可以直接访问我的个人博客哦 http://www.iwangzheng.com 获取本机ip信息的命令ifconfig总是在用,这次拿到pyhton代码里,感觉python好麻烦啊,每次都要import. 可以在程序里直接read出来,也可以先在命令行执行ifconfig > xx.txt,这样可以直接访问倒入后的文本信息. 这个小程序有个问题,与朋友讨论了还没解决彻底,如果用findall是可以匹配所有的,但是怎么解决用match只匹配一次的问题呢,当然如果

Chrome 扩展程序 CrxMouse 优化版 v3.0.1

说明 CrxMouse 原版更新至 v2.7.8,跟进升级优化版至 v3.0.1. 修改说明: 1. 去除可能存在的后台数据上传隐患: 2. 解决鼠标右键拖动时的轨迹漂移问题: 3. 添加部分默认设置: 4. 修改整体配色. 解压后将 CrxMouse_Techzero_v3.0.1.crx 文件拖放至 Chrome 的 扩展程序 管理页面即可自动安装. 如果安装后被 Chrome 禁用,请参照防止 Chrome 屏蔽 非官方 扩展程序 教程使用. 下载 下载地址:http://pan.baid

AutoCAD2018精简优化版_32/64位下载_附注册机激活程序_附CAD2018安装图解教程[百度云盘]

cad2018精简版是由"珊瑚の海"基于官方原版的autocad2018而精简的一个cad制图软件,该版本精简了多余组件,保留必须的VB.VC..Net 4.5.2.DirectX运行库,保留Express扩展工具可以自行选择安装,完善一些字体库,屏蔽并删除AutoCAD通讯中心,屏蔽AutoCADFTP中心,默认为AutoCAD经典空间,体积大幅度的缩减,并且软件包中集成注册机含激活说明,能够给用户最实用的绘图体验. 需要注意的是:本站提供的autocad2018 64位精简优化版功

python安装与第一个程序

python安装与第一个程序 python版本分为2.7和3.6.3版本. windows安装python 1 去官网python.org下载windows版本python.exe 2 根据提示进行安装即可     如何检查是否安装成功?1 打开cmd窗口 2 输入 python 看结果 3 如果报错说python不是一个内部的程序 4 需要打开我的电脑,属性,高级设置,设置环境变量,找到path那行,在后边追加上python的安装目录,保存即可.重启cdm窗口,就好了 5 再次输入 pytho