算法创作|模拟商品加入购物车并结算价钱问题解决方法

问题描述在日常生活里,怎么用Python来模拟剁手党添加商品到购物车并计算价格呢?示例:输入:1,2,q输出:你购物车中的的商品[['mate40 pro', 8888], ['小米10 pro', 4599]]你购物车中的的商品需要支付13487元解决方案先使用list函数并创建列表,在表里得出商品类型及价格,因此我们在程序里提前写好商品种类products = [['mate40 pro', 8888], ['小米10 pro',4599], ['nike鞋子', 799], ['洗发水', 32]]。此外考虑到还需要循环,所以使用了while语句,使用一段matlab程序,对原句进行循环和打印。使用if语句保证程序运行时,对于选项之内的商品进行添加操作,而对于选项之外的商品则是说明不在列表内,用条件语句对可能出现的情况进行设置,最后完成创作。代码清单products = [['mate40 pro', 8888], ['小米10 pro', 4599], ['nike鞋子', 799],  ['洗发水', 32]]shopping_list = []s = int(0)while True:print("---------商品名----------")for idx, p in enumerate(products, 1):print(f'{idx}:{p[0]} {p[1]}')num = str(input("请输入您要购买的商品编号,输入'q'退岀选择:"))if num.isdigit():num = eval(num)if 0<num<=4:shopping_list.append(products[num  - 1])print(f"{products[num-1]}加入购物车成功!")money = products[num-1][1]s += moneyelse:print("找不到商品")elif num == 'q':print("退岀选择。")breakelif num == "p":continueelif num == 'a':shopping_list.clear()s = 0else:print("找不到商品")print(f'你购物车中的的商品{shopping_list}你购物车中的的商品需要支付{s}元')运行结果:

结语本程序需要list函数,条件语句及循环,较为复杂。因此在解决目标问题之前,我们应该先提前做好蓝图,找出问题的规律,目标程序应使用哪一个函数并注意程序的特殊性。提前在书上或是在网上找到相应的资料。由于目标程序较为复杂,因此在很多方面并不完善。甚至有一些冗长,在今后的操作中应保证程序正确性和可读性之前,还需考虑它的精简度。相信在以后的实践中。我们终将找到更好的表达方式。实习编辑:王晓姣作者:辜启书、赵晨曦、文裕龙

(0)

相关推荐

  • 超详细的 Python 基础语句总结(多实例、视频讲解持续更新)

    目录 一.运算符 1.1 + --两个对象相加 1.2 - --得到负数或是一个数减去另一个数 1.3 * --两个数相乘或是返回一个被重复若干次的字符串.列表.元组 1.4 / --两个数相除 1. ...

  • Python教程:条件控制语句

    在软件工程史上,结构化程序设计是一个里程碑.在程序设计中,将程序划分为顺序结构.条件结构和循环结构三种结构.尽管并非每个程序都有这三个结构,但大多数大型程序都有这三个. 顺序结构,就是从上往下顺序执行 ...

  • (1条消息) 理想国Python入门教程

    (1条消息) 理想国Python入门教程

  • Python教程:Python的条件语句

    上次我们学习了关于Python的运算符的知识,这次我们来学习Python的条件语句.python的条件语句是一种选择结构,因为它是通过if关键字实现的,因此也称为if语句.(与C和Java不同,pyt ...

  • 自学Python基础知识汇总-第二节

    Python基础04 运算 数学运算 >>>print 1+9        # 加法 >>>print 1.3-4      # 减法 >>>p ...

  • 算法创作 | 0到n-1中缺失的数字问题解决方法

    问题描述一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0-n-1之内.在范围0-n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字.示例1:输入:[0,1,3 ...

  • 算法创作|随机出10道题并计算正确率问题解决方法

    问题描述用文字描述要解决的问题是什么.示例:随机出10道题并计算正确率输入:你的结果输出:你是否正确并出下一道题,10道题之后计算正确率解决方案把+.-.*./四个算数运算符号随机选择,n1代表随机在 ...

  • 算法创作|模拟抽卡游戏抽卡问题解决方法

    引言震惊!全网最火某网游抽卡模拟流出.问题描述输入抽卡次数X,得出抽卡结果示例:输入:X输出:UR(SSR,SR,R)解决方案在如今大部分抽卡游戏中,抽卡都是一个结果未知的行为,所以运用random可 ...

  • 算法创作|烂头背枪双人情况游戏随机模拟

    问题描述对于烂头背枪这个游戏,相信00后的同学并不陌生,这是幼时的回忆,这个游戏本身,有烂头,枪,虎,人,鸡,蜂总共六种角色,每种四个.对应规则为烂头背枪,枪打虎,虎吃人,人养鸡,鸡啄蜂,蜂叮烂头,前 ...

  • 在Ecshop购物车或结算页面显示商品的品牌

    在Ecshop购物车或结算页面显示商品的品牌

  • 算法创作|神奇语言问题解决方法

    问题描述一位同学正在学习一门神奇的语言,其中的单词都是由小写英文字母组成,有些单词很长,而这位同学一直记不住,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现的最多来分辨单词,现在请帮助这位同学 ...

  • 算法创作|规则数列计算解决方法

    问题描述如下图所示,小明用从 1 开始的正整数"蛇形"填充无限大的矩阵.1 2 6 7 15 -3 5 8 14 -4 9 13 -10 12 -11 --(1)容易看出矩阵第二行 ...

  • 算法创作|阶梯电价问题解决方法

    问题描述为了提倡居民节约用电,某省电力公司执行"阶梯电价",安装一户一表的居民用户电价分为两个"阶梯":月用电量50千瓦时(含50千瓦时)以内的,电价为0.53 ...

  • 算法创作|找出游戏的获胜者问题解决方法

    问题描述共有 n 名小伙伴一起做游戏.小伙伴们围成一圈,按 顺时针顺序 从 1 到 n 编号.确切地说,从第 i 名小伙伴顺时针移动一位会到达第 (i+1) 名小伙伴的位置,其中 1 <= i ...