Python实现的一个自动售饮料程序代码分享

yipeiwu_com6年前Python基础

写这个程序的时候,我已学习Python将近有一百个小时,在CSDN上看到有人求助使用Python如何写一个自动售饮料的程序,我一想,试试写一个实用的售货程序。当然,只是实现基本功能,欢迎高手指点,新手学习参考。

运行环境:Python 2.7

# encoding=UTF-8
loop=True
money=0
while loop:
    x = raw_input('提示:请投入金币,结束投币请按"q"键')
    if x=='q':
        if money==0:
            print '错误:您未投入过纸币,请至少投入一张纸币后才能选购商品'
        else:
            print '提示:您已结束投币,将进入购买商品操作界面'
            loop = False
    else:
        try:
            x = int(x)
            money+=x
            print '提示:您此次投币',x,'元人民币,您一共投币',money,'元人民币'
        except Exception,e:
            print '错误:您的金币系统不识别,请重新投币,谢谢!'
 
GoodList = {
    '可口可乐':2.5,
    '果粒橙':3,
    '奶茶':1.5,
    '加多宝':4
}
 
i=0
print '请选择商品:'
for x in GoodList:
    i+=1
    print '编号',i,'商品名称',x,'价格',GoodList[x]
print
 
fanwei = range(len(GoodList))
loop = True
while loop:
    o = raw_input('提示:请输入您要购买的商品编号,按"q"键结束购买')
    if o=='q':
        loop = False
    else:
        try:
            o = int(o)
            if o>=1 and o<=len(GoodList):
                i=0
                for x in GoodList:
                    i+=1
                    if i==o:
                        if money>=GoodList[x]:
                            money -= GoodList[x]
                            print '提示:您购买的商品是:',x,',价格:',GoodList[x],',您还剩余:',money,'元人民币'
                            if money==0:
                                loop = False
                        else:
                            print '错误:您的余额',money,'元已不足购买此商品',x,'[',GoodList[x],'元]'
            else:
                print '错误:您输入的商品编号不存在,请重新输入'
        except Exception,e:
            print '错误:请输入正确的产品编号,谢谢合作!'
 
if money>0:       
    print '提示:系统将找您,',money,'元人民币,欢迎下次光临'
else:
    print '提示:您的余额已用完,欢迎下次光临'

相关文章

python Dijkstra算法实现最短路径问题的方法

本文借鉴于张广河教授主编的《数据结构》,对其中的代码进行了完善。 从某源点到其余各顶点的最短路径 Dijkstra算法可用于求解图中某源点到其余各顶点的最短路径。假设G={V,{E}}...

python3实现域名查询和whois查询功能

1. 域名查询 万网提供了域名查询接口,接口采用HTTP协议: 接口URL:http://panda.www.net.cn/cgi-bin/check.cgi 接口参数:area_...

Python函数参数匹配模型通用规则keyword-only参数详解

Python3对函数参数的排序规则更加通用化了,即Python3 keyword-only参数,该参数即为必须只按照关键字传递而不会有一个位置参数来填充的参数。该规则在处理人一多个参数是...

Python实现简单的文件传输与MySQL备份的脚本分享

用python实现简单Server/Client文件传输: 服务器端: #!/usr/bin/python import SocketServer, time class MySer...

pandas中read_csv的缺失值处理方式

今天遇到的问题是,要将一份csv数据读入dataframe,但某些列中含有NA值。对于这些列来说,NA应该作为一个有意义的level,而不是缺失值,但read_csv函数会自动将类似的缺...