• 一个商品练习的py


    
    
    #!/usr/bin/env python
    # coding=utf-8
    # by 星空刺
    qian = int(raw_input("请输入当前money:"))
    gongzi = int(raw_input("请输入当前工资:"))
    d1 = {}
    d2 = {}
    d3 = {}
    d1 = {'自行车':100,'汽车':1000,'电脑':500}
    for k,v in d1.items():
        print "%s:%s" %(k,v)
        if v <= qian:
            d2.update({k:v})
        else:
            d3.update({k:v})
    print "你所不能购买的商品如下:"
    for k,v in d3.items():
        print "%s:%s" %(k,v)
    print "以下是你能购买的商品:"
    for k,v in d2.items():
        print "%s:%s" %(k,v) 
    while 1:
        name = raw_input("请输入要购买的商品名字:")
        name_jiage = d1.get(name)
        if d2.has_key(name) and qian >= name_jiage:
            qian = qian - name_jiage
            print "已经购买%s:%s,当前余额%d" %(name,name_jiage,qian) 
        else:
            chazhi = name_jiage - qian
            n = ( chazhi ) / gongzi
            if ( name_jiage - qian ) % gongzi > 0:
                n = n + 1
            print "你的钱不够,还差%d元,你需要赚取%d次工资才能购买" %(chazhi,n)
            break

    好吧,依然没有用list...虽然它却是是list练习

    shell版本:http://www.cnblogs.com/aaa103439/p/3774369.html


    添加批量购买,购物车,返回操作.

    #!/usr/bin/env python
    # coding=utf-8
    # by 星空刺
    # 2014.06.09
    import sys
    qian = int(raw_input("请输入当前money:"))
    gongzi = int(raw_input("请输入当前工资:"))
    #商品菜单
    d1 = {}
    #可购买商品
    d2 = {}
    #不可购买商品
    d3 = {}
    #已购买商品
    d4 = {}
    #商品菜单
    d1 = {'自行车':100,'汽车':1000,'电脑':500}
    #构建可购买商品字典和不可购买商品字典
    for k,v in d1.items():
        print "%s:%s" %(k,v)
        if v <= qian:
            d2.update({k:v})
        else:
            d3.update({k:v})
    print "你所不能购买的商品如下:"
    for k,v in d3.items():
        print "%s:%s" %(k,v)
    print "以下是你能购买的商品:"
    for k,v in d2.items():
        print "%s:%s" %(k,v) 
    #商品购买循环
    while 1:
        name = raw_input("请输入要购买的商品名字:")
        name_num = int(raw_input("请输入购买次数:"))
    #获取购买商品的价格
        name_jiage = d1.get(name)
        name_zongjia = name_jiage * name_num
    #判定商品是否存在以及钱是否够,并计算余额
        if d1.has_key(name) and qian >= name_jiage:
            qian = qian - name_zongjia
    #若钱不够,则计算差额,并继续所需工资的倍数,若倍数是小数,则+1
        else:
            chazhi = name_zongjia - qian
            n = ( chazhi ) / gongzi
            if chazhi % gongzi > 0:
                n = n + 1
            print "你的钱不够,还差%d元,你需要赚取%d次工资才能购买" %(chazhi,n)
            qian = -chazhi
    #若购买的商品已在商品篮,则将其对应商品总价相加
        if d4.has_key(name):
            d4[name] = name_zongjia + d4.get(name)
    #若购买商品不存在,则将其加入字典d4
        else:
            d4.update({name:name_zongjia})
        print "已添加%d件%s:%s,当前余额%d" %(name_num,name,name_jiage,qian) 
        print "当前购物车有如下商品:"
        for k,v in d4.items():
            print "%s:%s" %(k,v)
        ans = raw_input("是否购买其他商品,是y,不是n:")
        if ans == "y":
            continue
        else:
            break
    print ("以下是你购买车内的商品:")
    for k,v in d4.items():
        print "%s:%s" %(k,v)
    ans = raw_input("是否确认购买y,或者删除某件商品d,或者取消购买n:")
    if ans == "y":
        print "你的当前余额为%d" %qian
    elif ans == "d":
    #开始删除循环
        while 1:
            name_tui = raw_input("输入删除的商品名:")
            name_tui_num = int(raw_input("输入删除的商品件数:"))
    #计算对应商品的总退价
            name_tui_jiage = d1.get(name_tui) * name_tui_num
    #如果商品存在,则回款
            if d4.has_key(name_tui):
                qian = qian + name_tui_jiage
        #如果商品存在,且要清空对应商品,则删除字典d4的对应商品
                if d4.get(name_tui) == name_tui_jiage:
                    d4.pop(name_tui)
        #否则降低字典d4内对应商品的总价值
                else:
                    d4[name_tui] = d4.get(name_tui) - name_tui_jiage
            print "当前余额为%d,商品篮如下:" %qian
            for k,v in d4.items():
                print "%s:%s" %(k,v)
            ans1 = raw_input("是否继续删除y,或者保留剩余商品并购买n:")
            if ans1 == "y":
                continue 
            else:
                break
    elif ans == "n":
        for v in d4.values():
            qian = qian + v
        print "已经清空商品篮,你的当前余额是%d:" %qian
    [星空刺] |-->一颗星辰一闪即逝,支撑它的唯有方向和目的
  • 相关阅读:
    FreeBSD使用多线程下载工具axel
    类UNIX系统基础:文件安全与权限
    基于pf防火墙控制IP连接数
    在FreeBSD下搭建高性能企业级网关与代理服务器
    搭建自己的CVSup服务器
    转:Spring技术内幕——深入解析Spring架构与设计原理(三)IOC实现原理
    Spring Web MVC的实现(二)
    java中HashSet详解
    转:Spring技术内幕——深入解析Spring架构与设计原理(二)IOC实现原理
    DIV垂直水平都居中
  • 原文地址:https://www.cnblogs.com/aaa103439/p/3776185.html
Copyright © 2020-2023  润新知