Python实现简易超市管理系统
作者:顾城沐心 发布时间:2023-01-08 12:09:01
一:购物车管理功能
1.添加商品(不重复添加)、
2.删除商品(购物车中有的才能删除)、
3.查看购物车
4.退出系统
产品列表
products = [['iphone8', 6888], ['macPro', 15888],['小米8', 2599], ['coff', 50], ['book', 40], ['Nike shoes', 500]]
购物车列表
shopping = [‘'iphone8’]
#产品列表
products = [['iphone8', 6888], ['macPro', 15888],['小米8', 2599], ['coff', 50], ['book', 40],
['Nike shoes', 500]]
# 购物车列表
shopping = ['iphone8']
print("欢迎适用本系统,本系统初始状态如下:")
print("产品列表:\n",products)
print("购物车列表:\n",shopping)
while True:
while True:
try:
fun_num = int(input("\n请选择购物车功能:\n1.添加商品\t2.删除商品\t3.查看购物车 4.退出系统\n"))
break
except ValueError:
print("输入错误,请重新输入!")
# 1.添加商品 (不重复添加)
if fun_num == 1:
goods = input("请选择要添加的商品\n")
for index , item in enumerate(products):
#判断商品是否在商品列表中
if goods == item[0] and goods != '':
#判断商品是否已经在购物车中
if goods not in shopping:
shopping.append(goods)
print("添加成功!")
else:
print("该商品已在购物车内!")
break
else:
print("输入的产品不在产品列表中!")
# 2. 删除商品
elif fun_num == 2:
move_goods = input("请选择要移出购物车的商品:\n")
if move_goods in shopping:
shopping.remove(move_goods)
print("移除成功")
else:
print("该商品不存在购物车内!")
# 3. 查看购物车
elif fun_num == 3:
print(shopping)
# 4. 退出系统
elif fun_num == 4:
print("感谢您使用本系统!")
break
else:
print("指令错误,请重新输入!")
二:用户管理功能
1.增加用户信息
2.删除用户信息3.查看用户信息4.退出系统
用户数据格式:
user_sys = [
{'name': 'lily', 'sex': 'female', 'birth': '1998'},
{'name': 'Tom', 'sex': 'male', 'birth': '2000'},
{'name': 'Jane', 'sex': 'female', 'birth': '1999'}
]
#用户数据格式 字典列表
user_sys = [
{'name': 'lily', 'sex': 'female', 'birth': '1998'},
{'name': 'Tom', 'sex': 'male', 'birth': '2000'},
{'name': 'Jane', 'sex': 'female', 'birth': '1999'}
]
print("欢迎使用本系统,本系统初始状态如下:")
print("用户数据:\n",user_sys)
while True:
while True:
try:
fun_num = int(input("\n请选择用户管理功能:\n1.增加用户信息\t2.删除用户信息\t3.查看用户信息 4.退出系统\n"))
break
except ValueError:
print("输入错误,请重新输入!")
#1.增加用户信息
if fun_num == 1:
name = input("请输入新用户名称:\n")
for index,item in enumerate(user_sys):
#判断用户是否存在在用户信息列表中
if name == item['name'] and name != "":
print("该用户已经在用户列表中!")
break
else:
sex = input("请输入新用户性别[female,male]:\n")
#判断性别是否输入正确
if sex != "female" and sex != "male":
print("用户性别输入错误,默认为男性!")
sex = "male"
#限制输入的年份为整型
while True:
try:
birth = int(input("请输入新用户出生年份:\n"))
#年份合法判断
break
except ValueError:
print("年份输入错误,请重新输入!")
user_sys.append({"name":name,"sex":sex,"birth":birth})
# 2. 删除用户信息
elif fun_num == 2:
move_users = input("请输入要删除的用户姓名:\n")
for index,item in enumerate(user_sys):
#判断用户是否存在在用户列表中
if move_users in item['name']:
user_sys.remove(item)
print("删除成功!")
break
else:
print("输入的用户姓名不在用户数据列表中!")
# 3. 查看用户信息
elif fun_num == 3:
print(user_sys)
# 4. 退出系统
elif fun_num == 4:
print("感谢你使用本系统!")
break
else:
print("指令错误,请重新输入!")
三:AI客服对话
(1)包含问题关键词、对应的答案
(2)实现控制台输入问题,自动进行答复
(3)如果没有对应的关键词,回复正在学习中...
数据结构:
a_q = [
{
'q': ['优惠券', '优惠', '赠品'],
'answer': "本店成本价出售,没有优惠"
},
{
'q': ['发货', '快递'],
'answer': "3日之内发邮政快递"
},
{
'q': ['尺寸', '码', '号'],
'answer': "可以加入购物车的商品都有"
}
]
a_q = [
{
'q': ['优惠券', '优惠', '赠品'],
'answer': "本店成本价出售,没有优惠"
},
{
'q': ['发货', '快递'],
'answer': "20日之内发邮政快递"
},
{
'q': ['尺寸', '码', '号'],
'answer': "可以加入购物车的商品都有"
}
]
question = input("欢迎使用本系统,请问你需要什么服务:\n")
while True:
flag = False
for index,item in enumerate(a_q):
for key in item['q']: #遍历问题列表
if key in question:
print(item['answer'])
flag = True
break
if flag:
break
if not flag:
print("AI正在学习中...")
question = input("\n请问您还需要什么服务吗?\n")
if question in ['无','没有','再见','bye','no']:
print("欢迎下次光临")
break
来源:https://blog.csdn.net/m0_56051805/article/details/126994506
猜你喜欢
- 介绍获取协程返回值的四种方式:1、通过ensure_future获取,本质是future对象中的result方2、使用loop自带的crea
- Tesseract介绍tesseract是一个挺不错的OCR引擎,目前的问题是最新的中文资料相对较少,过时、不准确的信息偏多。tessera
- 上篇文章讲了js中的传值和传址 和 函数的作用域.这章我们来探讨js中的变量,表达式,和运算符 还有一些 js 语句。升级中……1, 表达式
- 如何制作一个搜索引擎链接程序?多收集几个网站的,然后我们引用它到自己的页面中。接下来,我们要创建页面用于搜索:<center>&
- 推荐算法在互联网行业的应用非常广泛,今日头条、美团点评等都有个性化推荐,推荐算法抽象来讲,是一种对于内容满意度的拟合函数,涉及到用户特征和内
- 本文实例为大家分享了Django实现分页功能,为了容易区别功能的展现,先创建一个数据库,用数据库中的数据做演示。创建数据库步骤如下:1.创建
- 装饰器总结什么是装饰器?处理函数的函数,加一个功能,但是不影响原来函数的内部结构生活中的例子:给手机加一个外壳,外壳保护了手机装饰器有什么用
- PyCharm 具备一般 IDE 的功能,比如,调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制…另外,PyCha
- xlsxwriter 简介用于以 Excel 2007+ XLSX 文件格式编写文件,相较之下 PhpSpreadsheet 支持更多的格式
- 这段时间,关于asp的前途,关于asp的好坏的讨论贴,都有好些了。当然,大家的心都是好的,但是一些朋友说的话,真是让人郁闷。个人觉得,在现在
- Pygal可用来生成可缩放的矢量图形文件,对于需要在尺寸不同的屏幕上显示的图表,这很有用,可以自动缩放,自适应观看者的屏幕1、Pygal模块
- 今天来讲一下一些实现html中表格隔行换色的方法,即每隔一个行表格的背景色就不同,有静态html/css实现的,也有asp动态实现的。这个功
- 前言:有些时候,为了设定手机铃声或者发抖音视频,我们会耗费大量时间在剪辑音乐高潮部分上。那么这个音乐高潮的提取能不能自动化呢?当然可以。先来
- CSV(Comma-Separated Values)即逗号分隔值,一种以逗号分隔按行存储的文本文件,所有的值都表现为字符串类型(注意:数字
- 一、面向对象三大特征之继承python三大特征:封装、继承、多态三者中继承最为核心,实际应用多,感受较为直观封装和多态略微抽象1、继承的概念
- 上周对线上某几个磁盘进行了fio硬盘性能测试,测试完成之后的结果需要绘制成图像展示出来。我在官网上查找
- 01 实现背景1、PHPdict.txt,一个文本文件,包含可能的敏感目录后缀2、HackRequests模块,安全测试人员专用的类Requ
- Expires 属性 Expires 属性指定了在浏览器上缓冲存储的页距过期还有多少时间。如果用户在某个页过期之前又回到此页,就会显示缓冲区
- Oracle Tips, Tricks & Scripts1. Topic: Compiling Invalid Objects:O
- Python jieba分词如何添加自定义词和去除不需要长尾词通过如下代码,读取一个txt的高频词汇:# 找到高频词汇 &nb