Python基于列表实现简易购物车程序详解
本文详细解析如何使用Python列表实现一个简易的购物车程序。通过定义商品列表、管理用户余额及已购商品,程序实现了商品展示、购买逻辑、余额校验及退出结算功能。代码包含完整的交互流程,适合初学者理解列表操作与条件判断的应用。
程序功能与逻辑设计
该购物车程序的核心目标是通过Python的基础数据结构模拟购物流程。程序启动后,首先要求用户输入初始余额,随后展示商品列表供用户选择。用户通过输入商品编号进行购买,系统会根据当前余额判断购买是否成功。若余额充足,商品将被加入购物清单,并从余额中扣除相应金额;若余额不足,则提示购买失败。用户可随时输入特定指令退出程序,退出时将打印最终余额及已购商品列表。
核心代码实现
程序通过列表(List)存储商品信息,并使用一个包含余额和商品列表的复合结构来管理用户状态。以下是完整的实现代码:
# 用户输入工资
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)代码逻辑解析
程序初始化阶段,通过 input() 获取用户输入的初始余额,并将其转换为整数。商品数据以嵌套列表的形式存储在 clothes 变量中,每个子列表包含商品名称和价格。用户状态由 haveGoods 列表管理,其中第一个元素为当前余额,第二个元素为已购商品列表。
在 while 循环中,程序首先遍历 clothes 列表,打印商品编号及详细信息。用户输入商品编号后,程序通过 clothes[code-1][1] 获取商品价格,并与当前余额 haveGoods[0] 进行比较。若余额充足,商品将被追加到 haveGoods[1],并从余额中扣除相应金额;否则,提示余额不足。
每次购买操作后,程序询问用户是否继续。若用户输入 'n',则设置 flag = False 退出循环。程序结束后,打印最终余额及已购商品列表。
注意事项
该程序为教学示例,未包含异常处理机制。若用户输入非整数或超出范围的编号,程序可能抛出 ValueError 或 IndexError。在实际应用中,建议增加输入验证逻辑,以提升程序的健壮性。
以上就是Python基于列表实现简易购物车程序的详细内容,更多关于Python列表应用及基础编程的资料请关注本站其它相关文章!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









