【python】python用户管理系统[简易版](源码+报告)【独一无二】

请添加图片描述


👉博__主👈:米码收割机
👉技__能👈:C++/Python语言
👉公众号👈:测试开发自动化【获取源码+商业合作】
👉荣__誉👈:阿里云博客专家博主、51CTO技术博主
👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。


python用户管理系统[简易版](源码+报告)【独一无二】


目录

  • python用户管理系统[简易版](源码+报告)【独一无二】
  • 一、功能概述
  • 二、设计逻辑
  • 三、功能展示
  • 四、部分代码


一、功能概述

用户管理系统具有以下核心功能:

  1. 新增用户:用户可以输入姓名、性别、手机号、QQ号码和邮箱等信息,系统会进行校验后添加用户信息,同时分配唯一的用户ID。
  2. 显示用户全部信息:用户可以查看系统中所有用户的信息,包括用户ID、姓名、性别、手机号、QQ号码和邮箱。
  3. 显示某位用户信息:用户可以通过输入用户ID,查看特定用户的详细信息。
  4. 更新某位用户手机号信息:用户可以根据用户ID更新特定用户的手机号信息。
  5. 退出系统:用户可以随时退出系统。

👇👇👇 关注公众号,回复 “用户管理系统” 获取源码👇👇👇

二、设计逻辑

用户信息类(User)是用户管理系统中的一个关键类,用于表示和管理用户的各项信息。该类的设计和功能如下:
类成员和属性

user_id_counter:一个类属性,用于自增长生成用户ID。初始值为0,每次创建新用户时自增1。
users:一个类属性,用于存储所有已创建的用户对象。

__init__(self, name, gender, phone, qq, email): 构造方法,用于初始化用户信息,包括姓名、性别、手机号、QQ号码和邮箱。
参数:

  • name:用户姓名
  • gender:用户性别
  • phone:用户手机号
  • qq:用户QQ号码
  • email:用户邮箱

生成唯一的用户ID(自增长)初始化用户的姓名、性别、手机号、QQ号码和邮箱属性。字符串表示方法 __str__(self):用于返回用户信息的字符串表示,便于显示用户信息。

返回值:包括用户ID、姓名、性别、手机号、QQ号码和邮箱等信息的字符串。

new_user = User("Alice", "女", "12345678901", "12345678", "alice@example.com")
print(new_user)

用户ID: 1, 姓名: Alice, 性别: 女, 手机号: 12345678901, QQ号码: 12345678, 邮箱: alice@example.com

用户信息类(User)的设计和实现允许创建多个用户对象,每个对象都具备唯一的用户ID和个性化的用户信息。此类的设计是用户管理系统的核心之一,确保用户信息的有效管理和展示。

👇👇👇 关注公众号,回复 “用户管理系统” 获取源码👇👇👇

三、功能展示

增加用户信息
在这里插入图片描述

显示全部用户信息
在这里插入图片描述

👇👇👇 关注公众号,回复 “用户管理系统” 获取源码👇👇👇

显示某位用户信息
在这里插入图片描述
更新用户信息

在这里插入图片描述

👇👇👇 关注公众号,回复 “用户管理系统” 获取源码👇👇👇

四、部分代码


def display_user_info(user_id):for user in User.users:if user.user_id == user_id:print(user)returnprint(f"用户ID为 {user_id} 的用户不存在。")#👇👇👇 关注公众号,回复 “用户管理系统” 获取源码👇👇👇
def update_user_phone(user_id):new_phone = input("请输入新的手机号: ")for user in User.users:if user.user_id == user_id:user.phone = new_phoneprint("手机号已成功更新。")returnprint(f"用户ID为 {user_id} 的用户不存在。")#👇👇👇 关注公众号,回复 “用户管理系统” 获取源码👇👇👇
while True:print("=======欢迎使用用户管理系统V1.0======")print("1. 新增用户")print("2. 显示用户全部信息")print("3. 显示某位用户信息")print("4. 更新某位用户手机号信息")print()print("0. 退出系统")print("===================================")choice = input("请选择操作: ")if choice == "1":add_user()elif choice == "2":display_all_users()elif choice == "3":user_id = int(input("请输入用户ID: "))display_user_info(user_id)elif choice == "4":user_id = int(input("请输入用户ID: "))update_user_phone(user_id)elif choice == "0":print("退出系统。")breakelse:print("无效的选择,请重新输入。")

👇👇👇 关注公众号,回复 “用户管理系统” 获取源码👇👇👇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/720019.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎么异地共享文件?

不同地点的团队成员之间共享文件是现代企业中常见的需求之一。随着分布式团队的不断增加,找到一种安全、高效的方式来实现异地共享文件变得尤为重要。本文将介绍一种名为【天联】的工具,它可以帮助团队成员在异地互相共享文件。 【天联】是一种专门为异地…

.NET Core Web API扩展框架

在.NET Core Web API中,你可以使用各种扩展框架和库来增强应用程序的功能和性能。这些扩展框架可以涵盖多个方面,包括认证与授权、异常处理、日志记录、API文档生成、性能监控等。以下是一些常用的.NET Core Web API扩展框架: 认证与授权 AS…

Corel 会声会影 2023 激活码 会声会影 2023 序列号生成器

会声会影 2023 已经出来很长时间了,但是对它的热爱一直持续不减,今天我给大家带来2023版本为用户带来的多个全新功能,可以更好的编辑视频,不过软件还是付费的,为此我带来了会声会影 2023序列号生成器,可以轻…

STM32 | STM32时钟分析、GPIO分析、寄存器地址查找、LED灯开发(第二天)

STM32 第二天 一、 STM32时钟分析 寄存器:寄存器的功能是存储二进制代码,它是由具有存储功能的触发器组合起来构成的。一个触发器可以存储1位二进制代码,故存放n位二进制代码的寄存器,需用n个触发器来构成 在计算机领域&#x…

数码管的动态显示(一)

1.原理 把每一个数码管闪烁的时间设置为1ms,肉眼观察不到就会认为6个数码管在同时闪烁。 实验目标: 使用6位8段数码管实现数码管的动态显示,显示的内容就是0-999_999。当计数到最大值,让他归零,然后循环显示。每0.1秒…

Doris2.0 部署流程、遇到的问题及1.0升级至2.0流程整理

背景 Doris 1.0 版本总是出现副本损坏问题,机器资源充足,FE 和 BE 数据足够,每日的数据量一般,但是总是隔三差五出现入库时副本损坏问题。Doris 已经发布了2.0 版本,本周又发布了新版本 2.0.5。升级 Doris 能否解决副…

Jenkins 安装

目录 1、部署 Jenkins 安装配置 Jenkins 解锁 Jenkins 安装 Jenkins 插件 创建管理员账号 手动安装插件 2、Jenkins 从 GitLat 拉取代码 安装 Jenkins 插件 在 node-16 上生成密钥对 把公钥配置到 gitlab 上 把 root 用户私钥配置到 jenkins 上 Jenkins 创建一个任务…

命名空间(namespace)

定义 在C中,命名空间(Namespace)是一个特性,用于封装代码并避免名称冲突。命名空间可以看作是一个容器,其中可以包含类、函数、变量、常量、其他命名空间等。通过使用命名空间,我们可以更好地组织代码&…

C#进阶高级语法之LINQ :Lambda 表达式

C# 中的 LINQ (Language Integrated Query) 提供了一种声明性的数据查询和操作方法,它允许开发人员对集合、数据库等数据源进行查询和操作,而不需要编写复杂的循环和手动编码。Lambda 表达式与 LINQ 紧密相关,它提供了一种简洁的方式来定义匿…

职场中“祖传代码”的处理建议

程序员是如何看待“祖传代码”的? 祖传代码的由来 在实际的程序员工作中,祖传代码是常见的。因为真正的互联网职场生活中,业务变动调整频繁,每到一个新的业务线,第一件事就是熟悉现有工程代码,看旧文档等…

面试经典150题 -- 回溯 (总结)

总的链接 : 面试经典 150 题 - 学习计划 - 力扣(LeetCode)全球极客挚爱的技术成长平台 17 . 电话号码的字母组合 1 . 先创建一个下标 与 对应字符串映射的数组,这里使用hash表进行映射也是可以的 ; 2 . 对于回溯 ,…

论人类饮食多样性的偏好:为何人们倾向于每一餐都吃得不同

人类的饮食行为深深植根于生物进化、文化传承和社会心理等多个维度。细心观察日常生活,我们会发现大部分人在饮食选择上有着显著的多样化倾向,即使不是餐餐大鱼大肉,也会尽可能让每一顿饭的内容有所不同。本文旨在深入探讨这种饮食多样化偏好…

下班前几分钟,我彻底弄懂了YAML

目录 1. YAML语法1.1 Scalars1.2 Array1.3 Object1.4 复杂结构1.5 高级用法1.5.1 浮点数特殊值1.5.2 锚点与别名1.5.3 合并键 2. PyYAML的使用2.1 解析YAML2.2 生成YAML 3. YAML和JSON的区别Ref 1. YAML语法 YAML(YAML Ain’t Markup Language)是一种用…

JavaScript编写幻灯片

问题:创建一段带有幻灯片效果的JavaScript代码,要包含一个有4幅图片,设置定时器,每隔5秒切换一次图片,如果用户单击开始按钮,定时器启动,并开始进行图片切换,如果用户单击停止按钮&a…

Java实战:Spring Boot接口重试机制实现

本文将详细介绍如何在Spring Boot应用程序中实现接口重试机制。我们将探讨重试机制的基本概念,以及如何使用Spring Boot和第三方库来实现接口的重试功能。此外,我们将通过具体的示例来展示如何在Spring Boot应用程序中配置和使用接口重试机制&#xff0c…

python数据类型及转换

一、数据类型 数据类型分为数值型、布尔型、字符串型等 1.1数值类型 数值类型可以分为整数类型、浮点数类型、复数类型 1.1.1整数类型 (1)概念:整数类型指数值是没有小数部分的,包含正整数、负整数和0 (2)进制种类:十进制--->234、5…

Effective C++ 学习笔记 条款08 别让异常逃离析构函数

C并不禁止析构函数吐出异常&#xff0c;但它不鼓励你这样做。这是有理由的&#xff0c;考虑以下代码&#xff1a; class Widget { public:// ...~Widget() { /* ... */ } // 假设这个可能吐出一个异常 };void doSomething() {std::vector<Widget> v;// ... } // v…

【网站项目】139选课排课系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

Redis 群集

简介 在现在的互联网大潮中&#xff0c;NoSQL可谓家喻户晓&#xff0c;Redis作为NoSOL大军中极其重要的一员&#xff0c;是我们走向架构道路的一条必经之路。 Redis介绍 Redis 数据库是一个非关系型数据库&#xff0c;在正式学习Redis之前&#xff0c;我们先来了解关系型数据库…

算法沉淀——动态规划之完全背包问题(leetcode真题剖析)

算法沉淀——动态规划之完全背包问题 01.【模板】完全背包02.零钱兑换03.零钱兑换 II04.完全平方数 完全背包问题是背包问题的一种变体&#xff0c;与01背包问题不同&#xff0c;它允许你对每种物品进行多次选择。具体来说&#xff0c;给定一个固定容量的背包&#xff0c;一组物…