python模拟购物车购物过程_Python基于数列实现购物车程序过程详解

要求

1、启动程序后让用户输入余额,并打印商品列表

2、用户通过输入编号购买商品

3、用户选择商品购买后,根据余额判断成功或者失败,给出对应提示

4、可以随时退出,退出后打印账号余额以及购买的商品列表

构思

1、首先,用户余额需要进行存储,用户购买的物品需要进行存储在数组中

2、用户购买成功后,将购买的物品放入物品集合,并用总金额减去余额

3、如果失败,给出失败提示,并打印余额

4、用户选择继续后,无论成功失败,都可以继续购买

代码 # 用户输入工资

balance = int(input("Please input balance:"))

# 定义衣服的数组

clothes = [["pants",100],["T-shirt",50],["skirt",20]]

# 个人所得,包括金钱和获取的物品

haveGoods = [balance,[]]

flag = True

while flag:

# 打印衣服列表

print("The clothes list is as follows")

print("______clothesList______")

i = 1;

for c in clothes:

print('The number:',i,":",c)

i += 1

# 用户输入商品编号

code = int(input("Please choose the number:"))

# 判断钱是否够用

if clothes[code-1][1] <= haveGoods[0]:

# 在自己的购物清单中加入已购物品

haveGoods[1].append(clothes[code-1])

# 减去花费的金钱

haveGoods[0] -= clothes[code-1][1]

print("You have successfully purchased!")

print("Your account balance is:",haveGoods[0])

else:

print("Your account balance is insufficient!")

print("Your account balance is:",haveGoods[0])

judge = input("You can press any button to continue,or input 'n' to leave:")

if judge == "n":

flag = False

print("Your account balance is:",haveGoods[0])

print("Your shopping list is as follows:")

print("______clothesList______")

for h in haveGoods[1]:

print(h)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/398148.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Time

问题 : Time时间限制: 1 Sec 内存限制: 128 MB题目描述Digital clock use 4 digits to express time, each digit is described by 3*3 characters (including”|”,”_”and” “).now given the current time, please tell us how can it be expressed by the digital clock…

正则表达式怎样匹配 不包含特定字符串的字符串

正则表达式匹配公式为&#xff1a;^((?!XXX).)*$&#xff0c; XXX为字符串。转载于:https://www.cnblogs.com/lixiaolun/p/5627254.html

ffmpeg 同宽度 画中画_FFmpeg中overlay滤镜用法-水印及画中画

1. overlay 技术简介overlay 技术又称视频叠加技术。overlay 视频技术使用非常广泛&#xff0c;常见的例子有&#xff0c;电视屏幕右上角显示的电视台台标&#xff0c;以及画中画功能。画中画是指在一个大的视频播放窗口中还存在一个小播放窗口&#xff0c;两个窗口不同的视频内…

shutil

高级的 文件、文件夹、压缩包 处理模块 1、shutil.copyfileobj(fsrc, fdst[, length])  将文件内容拷贝到另一个文件中 import shutil shutil.copyfileobj(open(old.xml,r), open(new.xml, w)) 2、shutil.copyfile(src, dst)  拷贝文件 shutil.copyfile(f1.log, f2.log) #目…

Android surfaceview详解

周末看《精通Android游戏开发》(Pro Android Games)&#xff0c;里面讲到游戏的框架&#xff0c;其中一个重要的概念surfaceview,觉得不是很理解&#xff0c;于是花了一点时间研究了下&#xff0c;写下自己的心得。surface&#xff0c;这个单词的意思是浮在表面的&#xff0c;那…

查看操作系统的UUID

UUID 是系统的唯一识别码&#xff0c;永远不会重复&#xff0c;比较有用。Windows 篇在命令提示符下输入wmic 再输入csproduct 或 csproduct list fullwmic:rootcli>csproduct list fullLinux 篇&#xff0c;&#xff08;以 CentOS为例&#xff09;yum install epel-release…

ThinkPhp学习06

一、简单学习修改用户信息模块 1、编写UserAction.class.php 1 <?php2 3 class UserAction extends Action{4 public function index(){5 $mM(User);6 $arr$m->select();7 $this->assign(data,$arr);8 …

Spring MVC @SessionAttributes注解

SessionAttributes原理 默认情况下Spring MVC将模型中的数据存储到request域中。当一个请求结束后&#xff0c;数据就失效了。如果要跨页面使用。那么需要使用到session。而SessionAttributes注解就可以使得模型中的数据存储一份到session域中。 SessionAttributes参数 1、name…

C# 关于MVC框架的简单实例(计算器)

一、需求分析 实现效果 二、实现步骤 步骤一&#xff1a;新建项目--->Web---->空模板 步骤二&#xff1a;添加控制器 步骤三&#xff1a;根据控制器名称添加视图 步骤四&#xff1a;添加Models模型 编写具体的方法 using System;using System.Collections.Generic;using…

JS函数

函数&#xff1a; 函数是由事件驱动或者当它被调用时执行的可重复色代码块。 <head> <script> function hanshu() { alert("你好&#xff01;"); } </script> </head><body> <button οnclick"hanshu()">点击</but…

the python interpreter is in_the python interpreter is in - 百度学术

152.6Khttp://www.web.mit.edu/18.417/OldFiles/doc/pydocs/ext.pdfweb.mit.edu全网免费224.9Khttp://www.logos.t.u-tokyo.ac.jp/~eddieh/Python-Docs-2.3.4/ext.pdflogos.t.u-tokyo.ac.jp全网免费224.9Khttp://www.logos.ic.i.u-tokyo.ac.jp/~eddieh/Python-Docs-2.3.4/ext.p…

windows下安装subversion

前言&#xff1a; 最近在写windows版本下svn hooks(钩子) post-commit的实现。所以会需要在windows下安装相应的subversion。经过一番查询后&#xff0c;决定使用VisualSVN Server和TortoiseSVN 来实现windows下subversion的安装。相应的安装包已放到相关的百度云盘&#xff0…

QMake Automatic Dependencies

qmake SUBDIRS Project Automatic DependenciesHere’s what I searched for, before figuring out how to get SUBDIRSdependencies working using qmake:“qmake export compiler flags”“qmake export defines”“qmake export includepath”“qmake build dependent proje…

apache安装配置

1.安装步骤&#xff1a; 解压源文件&#xff1a; 1 tar zvxf httpd-2.2.21.tar.gz 2 cd httpd-2.2.213 ./configure --prefix/usr/local/apache2 --enable-so --enable-rewrite 4 make5 make install 运行./configure 命令进行编译源代码&#xff0c; --prefix/usr/local/apach…

单片机机器周期怎么计算公式_单片机的机器周期计算

单片机的机器周期计算~2007-08-31 10:32 这么个最简单的问题&#xff0c;总是忘记&#xff0c;日了&#xff0c;现在干脆给记下来&#xff0c;以后再忘记的话就看一看好了。1、时钟周期时钟周期T又称为状态周期&#xff0c;是时序中最小的时间单位。具体计算就是1/fosc。也就是…

数据库---初识sql语句

初识sql语句 SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型&#xff1a; DDL语句 数据库定义语言&#xff1a; 数据库、表、视图、索引、存储过程&#xff0c;例如CREATE DROP ALTERDML语句 数据库操纵语言&a…

堆与二叉树(下)

接着上次的&#xff0c;这里主要介绍的是堆排序&#xff0c;二叉树的遍历&#xff0c;以及之前讲题时答应过的简单二叉树问题求解 堆排序 给一组数据&#xff0c;升序&#xff08;降序&#xff09;排列 思路 思考&#xff1a;如果排列升序&#xff0c;我们应该建什么堆&#x…

实战:ajax带参数请求slim API

restful api 支持get,post,put,delete等方法&#xff0c;那么jquery客户端怎么去实现呢?涉及到跨域又怎么办&#xff1f; 很多时候需要传递一个token(api_key) 去识别用户身份&#xff0c;获取访问接口的权限。这里的token 不放在 header中&#xff08;那个也能实现&#xff0…

关于自动布局更新约束方法的总结

1、layoutSubviews 在iOS5.1和之前的版本&#xff0c;此方法的缺省实现不会做任何事情(实现为空)&#xff0c;iOS5.1之后(iOS6开始)的版本&#xff0c;此方法的缺省实现是使用你设置在此view上面的constraints(Autolayout)去决定subviews的position和size。 UIView的子类如果需…

java new数组_Java如何使用new创建数组

java语言使用new操作符来创建数组&#xff0c;语法如下&#xff1a;arrayRefVar new dataType[arraySize];上面的语法语句做了两件事&#xff1a;一、使用dataType[arraySize]创建了一个数组。二、把新创建的数组的引用赋值给变量 arrayRefVar。数组变量的声明&#xff0c;和创…