项目系统管理(以超市货物管理为例)

设计思路:

1 分不同模块进行设计:管理员登录信息、商品货物信息、项目函数

2 建立管理员登录信息库、商品信息库 

3 建立主函数,此时登录需要在一个死循环内,这样退出的时候可以重新进入登录界面

4 依次建立任务函数,简单运行进行测验。没写好的函数或者条件判断中的内容,直接写为pass,程序可以跳过这个地方继续往下执行。

#商品管理系统
# a.	使用列表嵌套字典的方式保存用户数据(包含用户名,密码,姓名);
# b.	使用列表嵌套字典的方式保存商品数据(包含编号,名称,价格,折扣);
# c.	编写用户登录的函数,返回登录结果;
# d.	循环提示菜单,业务完毕时返回主菜单,退出时回到登陆页面;
# e.	将功能菜单中的业务功能各自编写到函数中;
# f.	用户选择不同业务编号时,调用已经写好的各种函数。

#重要思想:模块化,将不同模块写在一起,例如将函数都写在一起

#数据准备-用户列表
user1={"用户名":"aaa","密码":"123","姓名":"张三"}
user2={"用户名":"bbb","密码":"123","姓名":"李四"}
user3={"用户名":"ccc","密码":"123","姓名":"王五"}
usersList=[user1,user2,user3] 

#数据准备-商品列表
p1={"编号":"1001","名称":"苹果","价格":5,"折扣":1}
p2={"编号":"1002","名称":"香蕉","价格":3,"折扣":1}
p3={"编号":"1003","名称":"牛奶","价格":4,"折扣":1}
p4={"编号":"1004","名称":"白菜","价格":1,"折扣":1}
p5={"编号":"1008","名称":"西瓜","价格":3,"折扣":1}
productsList=[p1,p2,p3,p4,p5] 

#业务内容-用户登录
def login():
    msg = 0
    while 1 == 1:
        uname = input("请输入用户名:")
        upwd = input("请输入密码:")
        for user in usersList:
            if uname == user["用户名"] and upwd ==user["密码"]:
                print("------验证成功!欢迎你,",user["姓名"],"!")
                msg = 1
                break
        if msg == 0:
            print("验证失败,请重新输入!")
            continue
        else:
            break
    return msg #返回登录结果

#业务内容-显示商品信息
def showProducts():
    print("编号---名称---价格---折扣")
    for product in productsList:
        print(product["编号"]+"---"+product["名称"]+"---"+str(product["价格"])+"---"+str(product["折扣"])+"-")
    print("-------------------")

#增加商品项目
def addProducts():
    #生成新的编号
    lista=[] #存放所有商品的编号
    for product in productsList:
        lista.append(int(product["编号"]))
    newnum = str(max(lista)+1)
    name = input("请输入商品编号:")
    price = float(input("请输入商品单价"))
    discount = float(input("请输入商品折扣"))
    newProduct = {"编号":newnum,"名称":name,"价格":price,"折扣":discount}
    productsList.append(newProduct)
    print("------商品",name,"添加成功!")
    showProducts()

#业务内容-删除商品
def delProducts():
    while 1==1:
        msg=0 #记录商品是否存在
        num=input("请输入要删除的商品编号:")
        for product in productsList:
            if num == product["编号"]:
                print("---正在删除",product["名称"],"商品......")
                productsList.remove(product)#删除商品
                print("商品已删除")
                msg=1
                break
        if msg == 0:
            print("商品编号不存在,请输入正确的编号!")
            choice = int(input("取消输入请按1,重新选择请按2:"))
            if choice == 1:
                break
            else:
                continue
        else:
            showProducts()
            break

#业务内容-设置商品折扣
def setDiscount():
    while 1==1:
        msg=0 #记录商品是否存在
        num=input("请输入要更改折扣的商品编号:")
        for product in productsList:
            if num == product["编号"]:
                newDiscount = float(input("请输入新的折扣(0.1-1):"))
                product["折扣"]=newDiscount 
                print("商品",product["名称"],"折扣已设置成功",newDiscount*10,"折!")
                msg=1
                break
        if msg == 0:
            print("商品编号不存在,请输入正确的编号!")
            choice = int(input("取消输入请按1,重新选择请按2:"))
            if choice == 1:
                break
            else:
                continue
        else:
            showProducts()
            break

#业务内容-修改价格信息
def setPrice():
    while 1==1:
        msg=0 #记录商品是否存在
        num=input("请输入要更改价格的商品编号:")
        for product in productsList:
            if num == product["编号"]:
                newPrice = float(input("请输入新的价格:"))
                product["价格"]=newPrice
                print("商品",product["名称"],"价格已设置成功",newPrice,"元!")
                msg=1
                break
        if msg == 0:
            print("商品编号不存在,请输入正确的编号!")
            choice = int(input("取消输入请按1,重新选择请按2:"))
            if choice == 1:
                break
            else:
                continue
        else:
            showProducts()
            break
        
#按照商品价格进行升序或降序排列
def sort():
	choice=int(input("请选择升序或者降序(1.升序  2.降序):"))
	pList=[] #存放所有价格信息
	for product in productsList:
		pList.append(product["价格"])
	pList=list(set(pList)) #去掉重复价格
    
	print("-编号----名称----价格----折扣-")
	if choice==1:
		newList=sorted(pList)
		for price in newList:
			for product in productsList:
				if price==product["价格"]:
					print(product["编号"]+"-----"+product["名称"]+"-----"+str(product["价格"])+"-------"+str(product["折扣"]))
	else:
		newList=sorted(pList,reverse=True)
		for price in newList:
			for product in productsList:
				if price==product["价格"]:
					print(product["编号"]+"-----"+product["名称"]+"-----"+str(product["价格"])+"-------"+str(product["折扣"]))
                    
#----------------------------------
#显示主菜单,调用已经写好的业务函数
while 0==0:
    result = login()
    if result == 1:
        while 2==2 :
            print("----------------主菜单---------------")
            print("---1.显示商品列表")
            print("---2.增加商品信息")
            print("---3.删除商品")
            print("---4.设置商品折扣")
            print("---5.修改商品信息")
            print("---6.按照价格高低序列显示")
            print("---7.退出")

            choice = int(input("请选择业务编号,输入1-7:"))
            if choice ==1 :
                showProducts()
            elif choice == 2:
                addProducts()
            elif choice == 3:
                delProducts()
            elif choice == 4:
                setDiscount()
            elif choice == 5:
                setPrice()
            elif choice == 6:
                sort()
            elif choice == 7:
                print("正在退出...")
                break
            else:
                print("没有此功能,请重新选择!")
                continue

            

                    



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值