请设计实现一个商城系统,商城主要提供两个功能:商品管理、会员管理。

商品管理:

- 查看商品列表
- 根据关键字搜索指定商品
- 录入商品 会员管理:【无需开发,如选择则提示此功能不可用,正在开发中,让用户重新选择】 ''' def goods_manage():# 查看商品管理目录
print("欢迎使用老子的购物商城【商品管理】".center(30,"*"))
print('''
1.查看商品列表
2.根据关键字搜索指定商品
3.录入商品
''') def goods_list(): # 查看商品列表
print("欢迎使用老子的购物商城【商品管理】【查看商品列表】".center(30, "*"))
with open("goods.txt",mode="r",encoding="utf-8")as file: #读取所有商品
content=file.read()
content=content.strip()
print(content)
while True:
num = input("请选择(输入N返回上一级:)")
if num.upper() == "N":
return goods_manage()
def goods_search(): # 根据关键字模糊搜索指定商品
print("欢迎使用老子的购物商城【商品管理】【根据关键字搜索】".center(30, "*"))
with open("goods.txt", mode="r", encoding="utf-8")as file:
content = file.read()
content_list = content.strip().split("\n")
while True:
key_word = input("请输入要查询的关键字(输入N返回上一级:):")
for i in content_list:
if key_word in i:
print(i)
if key_word.upper() == "N":
return goods_manage() def goods_record(): # 录入商品
print("欢迎使用老子的购物商城【商品管理】【录入商品】".center(30, "*"))
while True:
info = []
with open("goods.txt", mode="a", encoding="utf-8")as file:
good_name = input("请输入商品名称(输入N返回上一级:):")
if good_name.upper() =="N":
return goods_manage()
info.append(good_name)
good_price = input("请输入商品价格):")
info.append(good_price)
good_count= input("请输入商品数量:")
info.append(good_count)
file.write(" ".join(info)+"\n")
print("添加成功")
return goods_record() while True:
num=input("请选择(输入N返回上一级:)")
if num.upper()=="N":
return function_list()
elif num=="1":
return goods_list()
elif num=="2":
return goods_search()
elif num=="3":
return goods_record()
def vip_manage():
print("功能正在开发中哦,亲。请重新选择")
return function_list() def function_list():
print("欢迎使用老子的购物商城".center(30,"*"))
print('''
1.商品管理
2.会员管理(不可选,正在开发中)
''')
while True:
num=input("请选择(输入N返回上一级:)")
if num.upper()=="N":
return function_list()
if num=="1":
return goods_manage()
if num=="2":
return vip_manage() function_list()  
                                 2019.4.13 Am 10:00--Am12:00
写完代码有感:
一次性写了这么多代码,功能也可以实现,虽然还有很多可以优化的地方,但是写完,那种兴奋,愉悦。很久都没有体会到了,必须记录一下。
要有不怕喷的勇气,敢于把自己的作品展示出阿来,敢于把自己的想法说出来,不断改进,不断优化,没有最好,只有更好。
程序猿使命:等我熬尽一日苦,喂你一口甜。为人民服务

  

【记录一下】从0到1 我的python开发之路的更多相关文章

  1. Webstorm 下的Angular2.0开发之路

    人一旦上了年纪,记忆力就变得越来越不好. 最近写了许多的博文,倒不是为了给谁看,而是方便自己来搜索,不然一下子又忘记了. 如果恰巧帮助到了你,也是我的荣幸~~~~~~~~~~~~ 废话不多说,看正题~ ...

  2. 错误:违反并发性: DeleteCommand 影响了预期 1 条记录中的 0 条

    在access的mdb数据库动态更新的过程中,遇到了DeleteCommand出现DBConcurrencyException异常,错误:违反并发性: DeleteCommand 影响了预期 1 条记 ...

  3. 违反并发性: UpdateCommand影响了预期 1 条记录中的 0 条 解决办法

    本文转载:http://www.cnblogs.com/litianfei/archive/2007/08/16/858866.html UpdateCommand和DeleteCommand出现DB ...

  4. FPC报价模块配置 UpdateCommand影响了预期 1 条记录中的 0 条 解决办法

    今天在增加P4厂 FPC报价模块配置,增加刚挠信息节点,在保存时报错:UpdateCommand影响了预期 1 条记录中的 0 保存时使用:SqlDataAdapter批量更新DataTable,怎么 ...

  5. [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP叠加图

    关于如何移植在android上使用SDL,可以参考[原]零基础学习SDL开发之移植SDL2.0到Android 和 [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP图 . 在一篇 ...

  6. [vue折线图] 记录SpringBoot+Vue3.0折线图订单信息展示

    因公司业务需求,需要做一份订单相关的折线图, 如果其中有一天没有订单的话,这一天就是空缺的,在绘制折线图的时候是不允许的,所有要求把没有订单数据的日期也要在图表显示. 使用技术vue3.0+sprin ...

  7. 批量添加删除Windows server DNS服务 恶意域名 * A记录 指向 127.0.0.1(2019年6月5日更新)

    下载链接:https://pan.baidu.com/s/1OUHyvnIfXYF0PdiT-VRyHw  密码:7gjj 注意!本解决方案在本地的Windows server服务器上把恶意域名指向1 ...

  8. Libvirt 版本降级过程记录 4.5.0 to 3.9.0

    前言 搞 OpenStack 开发 Libvirt 版本会随着 OpenStack 版本切来切去的,记录一下 Libvirt 从 4.5 降级到 3.9.0 的过程. 步骤 直接 downgrade ...

  9. 记录一下Swift3.0的一些代码格式的变化

    一.去重: 1>颜色: UIColor.whiteColor() 被改为 UIColor.white() 2>数组取值: list.objectAtIndex(i) 被改为 list.ob ...

随机推荐

  1. myeclipse10启动service窗口报异常

    1:找到与之对应的tomcat: 2:删掉“.metadata/.plugins/org.eclipse.core.runtime/.settings/ com.genuitec.eclipse.as ...

  2. Webrtc服务器搭建<转>

    http://blog.csdn.net/zqf_office/article/details/49851209

  3. DAY13-前端之jQuery

    jQuery jQuery介绍 jQuery是一个轻量级的.兼容多浏览器的JavaScript库. jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行 ...

  4. js兼容事件

    //浏览器检测(function () { window.sys = {}; var ua = navigator.userAgent.toLowerCase(); var s; (s = ua.ma ...

  5. 【274】Python 相关问题

    一.中文编码   参考:Python 中文编码 Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错. 解决方法为只要在文件开头加入如下代码,任 ...

  6. AudioFormat

    AudioFormat   用于访问 一系列语音格式和通道配置常量 例如用于AudioTrack 和AudioRecord中 The AudioFormat class is used to acce ...

  7. 激活 jave platform se

    1.有的网页上面会显示这个,但是点击后没反应 解决方案: firefox- >工具-附加组件管理器-“插件” 找到“Java(TM) Platform SE 7”,把“询问是否激活”改为“总是激 ...

  8. 将字符串str1复制为字符串str2的三种方法

    1.自己编写函数,将两个字符串进行复制 #include<iostream> using namespace std; int main(){ char str1[]="I lo ...

  9. ServletContext接口(六)

    javax.servlet.ServletContext接口 ServletContext(上下文)是公用的,就是.net中的application,主要用到的就是全局set设置值,get获取值,ja ...

  10. c# get set 理解