会员管理系统---Python基础项目(1)

1. 需求

"""
根据下面的需求描述,完成简单的用户管理系统,注意封装函数
1. 后台管理员只有一个用户: admin, 密码: admin
2. 当管理员登陆账号成功后, 可以管理前台会员信息.
3. 会员信息管理包含方法:
   a.添加会员信息
   b.删除会员信息
   c.查看单个会员信息
   d.查看所有会员信息
4. 对会员按照年龄降序排序
5. 退出
"""

2. 思路 

1. 框架

1.函数定义

def get_mid():  # 获取会员编号

        pass  # pass:此处用于后期添加、完善代码(使用pass不会报错)

def add_user():  # 增加会员信息

        pass

def remove_user():  # 删除会员信息

        pass

def show_single():  # 查看单个会员信息

        pass

def show_all():  # 查看全部会员信息 

        pass

def sort_users():  # 对会员按年龄排序

        pass  

2.调用函数

for _ in range(3):

        user_name = input("请输入用户名:")

        user_password = input("请输入密码:")
        if user_name == "admin" and user_password == "admin":

                pass        

        else:

                print(f"账号:{user_name}或者密码:{user_password}输入错误")

else:

        print("输入错误三次,请重新输入...")

2. 功能

1. 增添功能

def get_mid(): # 获取用户编号
    while True:
        mid = str(random.randint(10000, 99999))
        if mid not in [info_dict["编号"] for info_dict in user_database]:
            return mid

def add_user():
    mid = get_mid()
    user_name = input("请输入用户名:")
    user_sex = input("请输入性别:")
    user_age = input("请输入年龄:")
    user_database.append(dict(zip(["编号","姓名","性别","年龄"],[mid,user_name,user_sex,user_age])))
    print(f"会员录入成功,会员编号是{mid}")

注释:

1. 增添会员信息前,先获取会员编号;

2. random.randint(),需先导入random包,此函数取值范围为闭区间

3. get_mid(),返回值前作了一次判断(列表推导式),判断编号是否已经在用户数据库中

列表推导式可参考:https://blog.csdn.net/m0_57975635/article/details/127834191?spm=1001.2014.3001.5502

4. 添加方式外层为列表常用append方法,内层为字典dict(zip())定义方法

知识点可参考以下:

https://blog.csdn.net/m0_57975635/article/details/127834191?spm=1001.2014.3001.5502
https://blog.csdn.net/m0_57975635/article/details/127931233?spm=1001.2014.3001.5501

2. 删除功能

def remove_user():
    mid = input("请输入需要删除的会员的编号:")
    for info_dict in user_database:
        if mid == info_dict["编号"]:
            user_database.remove(info_dict)
            print(f"编号为{mid}删除成功")
            break
    else:
        print("删除失败,输入错误会员编号")

遍历会员信息库,查询需要删除的会员的编码,查询成功调用remove函数删除

3. 展示会员信息

def show_single():
    mid = input("请输入需要查询的会员编号:")
    for info_dict in user_database:
        if mid == info_dict["编号"]:
            print(f"该会员信息为:{info_dict}")
            break
    else:
        print("查询失败,输入错误会员编号")

def show_all():
    for info_dict in user_database:
        print(f"会员信息为:{info_dict}")

 4. 会员排序

def sort_users():
    user_database.sort(reverse=True,key=lambda info_dict:info_dict["年龄"])
    print(user_database)

1. 用户数据库调用sort函数

2. sort函数中的key关键字中使用匿名函数

3. 实践

1. 代码

# 1.封装函数
import random

user_database = []
def get_mid(): # 获取用户编号
    while True:
        mid = str(random.randint(10000, 99999))
        if mid not in [info_dict["编号"] for info_dict in user_database]:
            return mid

def add_user():
    mid = get_mid()
    user_name = input("请输入用户名:")
    user_sex = input("请输入性别:")
    user_age = input("请输入年龄:")
    user_database.append(dict(zip(["编号","姓名","性别","年龄"],[mid,user_name,user_sex,user_age])))
    print(f"会员录入成功,会员编号是{mid}")

def remove_user():
    mid = input("请输入需要删除的会员的编号:")
    for info_dict in user_database:
        if mid == info_dict["编号"]:
            user_database.remove(info_dict)
            print(f"编号为{mid}删除成功")
            break
    else:
        print("删除失败,输入错误会员编号")

def show_single():
    mid = input("请输入需要查询的会员编号:")
    for info_dict in user_database:
        if mid == info_dict["编号"]:
            print(f"该会员信息为:{info_dict}")
            break
    else:
        print("查询失败,输入错误会员编号")

def show_all():
    for info_dict in user_database:
        print(f"会员信息为:{info_dict}")

def sort_users():
    user_database.sort(reverse=True,key=lambda info_dict:info_dict["年龄"])
    print(user_database)

# 2.调用函数
for _ in range(3):
    print("会员管理系统".center(50,"="))
    user_name = input("请输入用户名:")
    user_password = input("请输入密码:")
    if user_name == "admin" and user_password == "admin":
        print("登录成功,您好")
        print("""您可以选择的功能
            1.添加会员信息
            2.删除会员信息
            3.查看单个会员信息
            4.查看全部会员信息
            5.对会员按照年龄降序排序
            6.退出""")
        while True:
            select = input("请选择功能")
            if select == "1":
                add_user()
            elif select == "2":
                remove_user()
            elif select == "3":
                show_single()
            elif select == "4":
                show_all()
            elif select == "5":
                sort_users()
            elif select =="6":
                print("欢迎再次使用")
                break
            else:
                print("占无此功能...")
        break
    else:
        print(f"账号:{user_name}或者密码:{user_password}输入错误")
else:
    print("输入错误三次,请重新输入...")

2.测试结果(大部分)

  • 6
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python-CMDB资产管理系统项目是基于Python编程语言开发的一种用于管理企业资产的信息系统。CMDB(Configuration Management Database)是一种用于记录和管理组织内所有硬件和软件资源的数据库。该项目的目标是通过实现一个功能强大且易于使用的资产管理系统,帮助企业更好地管理和维护其资产库。 该系统具备以下特点和功能: 1. 资产信息管理:可以录入和管理所有的企业资产信息,包括硬件设备、软件和网络设备等。用户可以根据自己的需求添加、修改和删除资产信息,并可以对资产进行分类和标记,便于查找和管理。 2. 资产追踪和监控:系统可以实时追踪和监控所有资产的状态和位置,帮助用户快速定位和管理资产。例如,用户可以查询特定设备的位置、使用状况和维护历史等信息。 3. 资产维护计划:系统可以为每个资产设置维护计划,包括定期检查、保养和维修等。用户可以根据资产的使用情况和维护需求制定和调整维护计划,以确保资产的正常运行。 4. 报表和统计分析:系统可以生成各种报表和统计分析图表,帮助用户了解和掌握资产的整体情况和趋势。用户可以根据报表和图表的结果做出决策和调整管理策略。 5. 安全和权限管理:系统支持用户权限管理,可以设置不同用户的访问权限,保护重要数据和操作不受未经授权的访问。 Python-CMDB资产管理系统项目使用Python语言开发,具有开源、跨平台和易于扩展等优势。同时,Python拥有丰富强大的库和框架,可以快速开发和调试系统。通过该项目,企业可以有效地管理和维护其资产,提高工作效率和资产利用率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chiayi_init_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值