python文件部分:

user = {'username':None}

shopping_trolley = {}

shopping_num = [0]

money = [0]

my_money = [0]

#获取商品列表

def get_goods_list():

with open('shopping.txt', encoding='utf-8') as fr:

shopping_dic = eval(fr.read())

return shopping_dic

shopping_dic = get_goods_list()

#登录

def login():

if not user['username']:

print("欢迎来到登录页面^-^\n")

usename = input("请输入你的用户名:")

password = input("请输入你的密码:")

#打开文件判断文件中是否存在用户名和密码

with open('user_info.txt',encoding='utf-8') as fr:

data = fr.read().split('|')

user_info = (f"{usename}:{password}")

if user_info in data:

print("登录成功!")

print(f"欢迎{usename},你当前的账户余额为:{my_money[0]}\n")

user['username'] = usename

else:

print("登录失败")

else:

print(f"尊敬的:{user['username']},你已经登录,无需重复登录^-^")

#注册

def register():

print("欢迎来到注册页面^-^\n")

#获取用户注册的用户名和密码

username = input("请输入你的用户名:")

password = input("请输入你的密码:")

#将注册信以追加的形式存入文件

with open('user_info.txt','a') as fa:

fa.write(f"{username}:{password}|")

print("注册成功!")

#购物

def shopping():

if user['username']:

print("欢迎来到购物界面!^-^")

while True:

for k,v in enumerate(shopping_dic):

print(f"序号:{k},{v}")

get_goods_num = input("请输入商品序号(不需要则按q退出):")

if get_goods_num == 'Q' or get_goods_num =='q':

print(f"你当前购物车中有{shopping_num[0]}件物品")

break

if get_goods_num =="":

print("请输入正确的序号\n")

continue

get_goods_num = int(get_goods_num)

goods = shopping_dic[get_goods_num]

print(f"{goods}加入购物车成功\n")

goods_name = goods[0]

if goods_name in shopping_trolley:

shopping_trolley[goods_name] += 1

shopping_num[0] +=1

else:

shopping_trolley[goods_name] = 1

shopping_num[0] += 1

money[0] += goods[1]

else:

print("您当前尚未登录!")

#购物车

def shopping_list():

if user['username']:

print("欢迎来到购物车功能^-^")

while True:

print(f"你当前加入购物车的商品为{shopping_trolley},总价格为{money[0]}")

delete = input("请问是否移除商品,不移除则按q退出:")

if delete == 'Q' or delete =='q':

break

elif delete =="":

print("请输入正确的名称或字母\n")

continue

shopping_trolley[delete] -=1

if shopping_trolley[delete] == 0:

shopping_trolley.pop(delete)

for goods in shopping_dic:

if delete in goods:

money[0] -= goods[1]

shopping_num[0] -= 1

else:

print("请登录后再试!")

#结算

def pay():

if user['username']:

print("欢迎来到结算页面^-^")

print(f"您当前的账户余额为:{my_money[0]}")

while True:

print(f"您当前中的购物车中有:{shopping_trolley},总价为{money[0]}")

settle_account = input("是否结算,结算请输入y,退出请输入n(退出则会清空购物车):").lower()

if settle_account == 'y':

if my_money[0] > money[0]:

print(f"支付{money[0]}成功,已成功购买{shopping_trolley}")

shopping_num[0] = 0

my_money[0] = my_money[0] - money[0]

print(f"你当前余额为:{my_money[0]}元")

shopping_trolley.clear()

money[0] = 0

break

else:

print(f"你的余额不允许你这么做哦,你当前余额为{my_money[0]}←_←,请充值后再重试")

elif settle_account == 'n':

shopping_trolley.clear()

money[0] = 0

print("清空购物车成功!")

break

else:

print("输入不合法")

else:

print("请登录后再试!")

#充值

def recharge():

if user['username']:

print("欢迎来到充值界面^-^")

print(f"您当前余额为:{my_money[0]}")

while True:

top_up = input("请输入你充值的金额:")

if top_up.isdigit():

my_money[0] += int(top_up)

if my_money[0] != 0:

print("充值成功!")

print(f"您当前的账户余额为:{my_money[0]}")

break

elif top_up == "":

print("请输如你需要的数目!")

else:

print("充值失败")

continue

else:

print("请登录后再试!")

#退出登录

def exit():

if user['username']:

while True:

exi_login = input(f"尊敬的:{user['username']},是否退出登录,退出请输入y,取消请输入n:").lower()

if exi_login == 'y':

user['username'] = ""

print("退出成功!")

break

elif exi_login == 'n':

print("取消退出登录成功!")

break

else:

print("请输入y/n")

else:

print("你当前尚未登录!")

# 主函数

def mian():

mian_list = """

1:注册

2:登录

3:购物

4:购物车

5:结账

6:充值入口

7:退出登录

"""

mian_func = {

'1': register,

'2': login,

'3': shopping,

'4': shopping_list,

'5': pay,

'6': recharge,

'7': exit

}

mian_len = len(mian_func)

while True:

print(mian_list)

select_serv=input("请选择服务(按Q退出):")

if select_serv == 'Q' or select_serv =='q':

print("欢迎下次光临^-^")

break

if not select_serv.isdigit():

print('请输入数字!')

continue

# select_serv = int(select_serv)

if select_serv > str(mian_len):

print("你输入的数字不合法!")

continue

mian_func[select_serv]()

mian()

购物列表文件

[

['变形金刚', 199],

['玩具汽车', 299],

['电动玩具', 399],

['流光星陨', 499],

['阿波菲斯', 599],

['荒古遗尘', 699],

['圣耀救赎', 799],

['苍穹幕落', 899],

['夜雨黑瞳', 999],

['界·夜雨黑瞳', 1999]]

python购物车结算_python购物车相关推荐

  1. python购物车结算_python购物车-基础版本

    # 1. 用户先给自己的账户充钱:比如先充3000元. # 2. 页面显示 序号 + 商品名称 + 商品价格,如: # 1 电脑 1999 # 2 鼠标 10 # - # n 购物车结算 # 3. 用 ...

  2. python购物车结算_python中购物车

    python的基础语法 python数据类型:(按特征划分) 数字类型: 1.整形:布尔形.长整型L.标准整形 2.非整形:双精度型.复数.decimal(不是内建类型) 序列类型: 1.字符串(st ...

  3. python 购物车总额_python购物车进阶(函数)

    '''头发掉了不少'''import os'''用户注册'''def register(): username= input("请输入注册用户名:") password= inpu ...

  4. python 购物车程序_Python 购物车程序(文件版)

    ''' 购物车程序 用户入口: 1.商品信息存在文件里 2.已购商品,余额记录 商家入口: 1.可以添加商品,修改商品价格 ''' filePath = "D:\Python_work\Lp ...

  5. python 购物车分析_Python购物车

    一.Locust工具介绍 1.概述 Locust是一款易于使用的分布式负载测试工具,完全基于事件,使用python开发,即一个locust节点也可以在一个进程中支持数千并发用户,不使用回调,通过gev ...

  6. Spring Boot + Drools+模板引擎,优惠券的动态添加以及购物车结算

    目录 二.项目文件结构以及数据库表结构 三.主要项目文件说明 1.pom文件 2.配置文件 3.实体类 4.添加优惠券业务实现 5.购物车结算业务实现 四.实现效果 1.添加优惠券 2.购物车结算 五 ...

  7. python实验报告内容实现购物车系统_Python实现的购物车功能示例

    本文实例讲述了python实现的购物车功能.分享给大家供大家参考,具体如下: 这里尝试用python实现简单的购物车程序... 基本要求: 用户输入工资,然后打印购物菜单 用户可以不断的购买商品,直到 ...

  8. python费用结算系统_python 全栈开发,Day104(DRF用户认证,结算中心,django-redis)

    考试第二部分:MySQL数据库 6.  MySQL中char和varchar的区别(1分) char是定长,varchar是变长. char的查询速度比varchar要快. View Code 7.  ...

  9. python 购物车程序_购物车程序python

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 第3点要求: 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒在循环外层 ...

最新文章

  1. 基于Golang的CLI 命令行程序开发
  2. vue 数据劫持详解
  3. 转行做python现在怎么样_本人现在大三之前是学习网络的,现在想转行做python程序员,该如何学习?...
  4. 我看TechEd 2012之技术热点
  5. GPU迎来投资热潮 退潮后谁在裸泳
  6. 怎样连接mysql文件_如何连接MYSQL数据库?
  7. Visual Studio 2010 单元测试之一---普通单元测试:http://blog.csdn.net/tjvictor/archive/2011/02/09/6175362.aspx...
  8. redis5 外部不能连接_【硬见小百科】PCB连接的方法
  9. php5.3 延迟静态绑定 static关键字
  10. 【原创】基于NIOS II的ADS1256 SPI驱动
  11. iOS进阶(XML、JSON数据解析)
  12. 随机数生成器python_Python中的随机数生成器
  13. nyoj 236 心急的C小加(贪心)
  14. 自动化测试环境搭建--Python及selenium
  15. 指纹识别技术的基本原理及过程
  16. lbochs模拟器最新版_bochs模拟器最新版下载
  17. 解决ROS中运行launch文件报错ERROR: cannot launch node of type[xxx/xxx]:xxx的问题
  18. android设备(手机) 投屏 到mac电脑
  19. python系列3—顺序结构和分支结构
  20. 如何在React.js文件中设置标签的背景图片

热门文章

  1. 几款实用的照片变漫画免费软件,千万别错过
  2. 如何在谷歌浏览器中使用vue调试工具
  3. Vue - 允许浏览器进行debugger调试
  4. Scalable TCP拥塞算法
  5. 【用户画像】用户画像简介、用户画像的架构、搭建用户画像管理平台
  6. CG动画制作——实训项目中期工作(一)
  7. 关于多层板,你了解多少?
  8. 如何实现上传多个图片并依次展示_js前端实现多图图片上传预览的两个方法(推荐)...
  9. 学生计算机2的4次方,学生专用计算器怎么开N次方
  10. 抖音只能上下滑动吗_抖音短视频推荐为什么是上下滑动?抖音短视频推荐表格设置方法...