第一个pyhone程序,简单的购物车功能,刚开始学习,练习下手感。

#/usr/bin/env python
#-*- coding:utf-8 -*-

salary = int(raw_input("请输入您的工资:").strip())

shop_list=[[1,'iphone6s',5800],[2,'mac book',9000],[3,'coff',32],[4,'python book',80],[5,'bicyle',1500]]
user_list=[]

print('''商品列表如下:
1.iphone6s 5800
2.mac book 9000
3.coff 32
4.pyhone book 80
5.bicyle 1500
''')

while True:
  select = int(raw_input("请选择需要购买的商品编号:").strip())

  if select >= len(shop_list):
    print("商品编号不存在,请重新输入!")
    continue
  else:
    Number = shop_list[select-1][0]
    Product = shop_list[select-1][1]
    Price = shop_list[select-1][2]

  if salary >= Price:
    user_list.append(Product)
    salary = salary - Price
    print("已购买商品:%s") %str(user_list)
    print("已消费%s元,余额为%s元。") %(Price,salary)
    continue
  else:
    Difference = Price - salary
    print("您的工资无法满足此产品价格,还差%s元,请重新选择其他商品!") %Difference
    continue

程序执行结果:

root@virtual-machine:/opt/python# python 1.py
请输入您的工资:50000
商品列表如下:
1.iphone6s 5800
2.mac book 9000
3.coff 32
4.pyhone book 80
5.bicyle 1500

请选择需要购买的商品编号,退出请输入exit:1
已购买商品:['iphone6s']
已消费5800元,余额为44200元。
请选择需要购买的商品编号,退出请输入exit:2
已购买商品:['iphone6s', 'mac book']
已消费9000元,余额为35200元。
请选择需要购买的商品编号,退出请输入exit:3
已购买商品:['iphone6s', 'mac book', 'coff']
已消费32元,余额为35168元。
请选择需要购买的商品编号,退出请输入exit:4
已购买商品:['iphone6s', 'mac book', 'coff', 'python book']
已消费80元,余额为35088元。
请选择需要购买的商品编号,退出请输入exit:5
商品编号不存在,请重新输入!
请选择需要购买的商品编号,退出请输入exit:1
已购买商品:['iphone6s', 'mac book', 'coff', 'python book', 'iphone6s']
已消费5800元,余额为29288元。
请选择需要购买的商品编号,退出请输入exit:2
已购买商品:['iphone6s', 'mac book', 'coff', 'python book', 'iphone6s', 'mac book']
已消费9000元,余额为20288元。
请选择需要购买的商品编号,退出请输入exit:3
已购买商品:['iphone6s', 'mac book', 'coff', 'python book', 'iphone6s', 'mac book', 'coff']
已消费32元,余额为20256元。
请选择需要购买的商品编号,退出请输入exit:4
已购买商品:['iphone6s', 'mac book', 'coff', 'python book', 'iphone6s', 'mac book', 'coff', 'python book']
已消费80元,余额为20176元。
请选择需要购买的商品编号,退出请输入exit:6
商品编号不存在,请重新输入!
请选择需要购买的商品编号,退出请输入exit:

第一个简单的python程序,模拟购物车的更多相关文章

  1. 完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能

    #!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能'''try: a=int(raw_input(" ...

  2. 完成一段简单的Python程序,使用函数实现用来判断输入数是偶数还是奇数

    #!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,使用函数实现用来判断偶数和奇数'''def number_deal(a): if a%2==0 ...

  3. Python第一天---第一个Python程序

    1.我的环境是windows下,需要安装notepad++,安装Python2,配置环境变量(百度下可以见) 2.打开cmd窗口-----输入I:  [输入要在哪个磁盘存储python代码(我的在I: ...

  4. Python学习笔记(二)使用Sublime Text编写简单的Python程序()

    一.使用Sublime Text编写Python 1.点击“文件” →”新建文件“ 2.点击”文件“→”保存“,并保存为.py文件 此时已经创建好Python文件了,接下来就可以编写Python程序了 ...

  5. 一个简单的python程序

    假设我们有这么一项任务:简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200. import subprocesscmd="cmd.ex ...

  6. Python 初学——V_Rename(第一个完整的python程序)

    我在大一的时候就对python非常感兴趣,就是一直没有时间和机会去学习下,只是了解些表面的东西,今天早上整理电脑的时候发现文件夹里面的文件名是这样子的,有点小不舒服,特别想去除重复的"Str ...

  7. 一道简单的python面试题-购物车

    要求实现:1.程序开始运行时要求手动填入工资金额2.然后展示一份带有价格的商品列表3.选择某个商品,足够金额购买就添加到购物车,否则提示无法购买4.退出后列出购物车清单 #!/usr/bin/pyth ...

  8. struts2总结二:第一个简单的struts2程序

    到struts2官网上面下载struts2的jar包,然后解压. struts2的入门程序,实现简单的用户登录,struts2里面的helllo world.利用eclipse的开发工作如下: 1.首 ...

  9. 第一天 简单的python认证登陆代码

    #!/usr/bin/env python3# -*- coding:utf-8 -*-# name:zzyu welcome = '''-----------welcome to home----- ...

随机推荐

  1. 9.session的生命周期

    1.创建 当客户端第一次访问某个jsp或者Servlet的时候,服务器会为当前会话创建一个SessionId,每次客户端向服务端发送请求的时候,都会将此SessionId携带过去,服务端会对此Sess ...

  2. 【转】iOS 9 Storyboard 教程(一上)

    转自:http://blog.csdn.net/yangmeng13930719363/article/details/49886547 Storyboard是在iOS5之后新增的一个令人兴奋的功能, ...

  3. Linux 可重入内核

    Linux内核是可重入的,这意味着几个进程可能同时在内核模式下执行.(当然单处理器系统,在某一时间只会有一个进程执行,但许多会阻塞在内核模式)这些进程会分时共享CPU.I/O设备等系统资源,给用户的感 ...

  4. NewsDaoImpl

    package com.pb.news.dao.impl; import java.sql.CallableStatement;import java.sql.Connection;import ja ...

  5. Java IO在实际项目开发中应用

    IO是java绕不过去的槛,在开发中io无处不在, 正如同 世界上本没有路,java io写多了,也就知道了大体是什么意思,在读完thinking in java 感觉就更清晰了,结合具体的业务场景, ...

  6. 取得system32文件夹下面文件的写入权限

    取得system32文件夹下面文件的写入权限 TAKEOWN /F %SystemRoot%\system32\riched32.dll ICACLS %SystemRoot%\system32\ri ...

  7. Angular表单控件需要类型和实际值类型不一致时实现双向绑定

    适用Angular版本为:>=2.本文同样适用于Ionic这类的基于Angular实现的框架. 本文的思路也适用于控件显示的值和实际的值不一样时实现双向绑定. 1. 问题描述 在使用md2的da ...

  8. Luogu 1962 斐波那契数列(矩阵,递推)

    Luogu 1962 斐波那契数列(矩阵,递推) Description 大家都知道,斐波那契数列是满足如下性质的一个数列: f(1) = 1 f(2) = 1 f(n) = f(n-1) + f(n ...

  9. icon button样式(类似windows桌面图标)

    <Style x:Key="IconButton" TargetType="{x:Type Button}"> <Setter Propert ...

  10. 封装游戏配表读取和存储(xml格式);支持行列存取,标题存取

    做服务器肯定会涉及到游戏配表,而读取游戏配表是一个必备技能; 之前一直都是采用TinyXml直接读,匹配字符串,每次加个表都是一大坨代码,看着也是心累; 因此利用了闲暇的时间封装了一个 xml配置表 ...