要求:不能重名

'''
一、需求:进入系统显示系统功能界面,功能如下:
1、添加学员
2、删除学员
3、修改学员信息
4、查询学员信息
5、显示所有学员信息
6、退出功能
''' # 定义功能界面函数
def info_print():
print("请选择功能:")
print("1、添加学员")
print("2、删除学员")
print("3、修改学员信息")
print("4、查询学员信息")
print("5、显示所有学员信息")
print("6、退出功能") info = [] #存储所有学员信息 def add_info():
# 添加学员信息函数
# 1 用户输入学号、姓名、手机号
new_id = input("请输入学号:")
new_name = input("请输入姓名:")
new_tel = input("请输入手机号:") # 2 判断是否添加这个学员,如果学员存在就报错,否则就添加数据
global info
for i in info:
if new_name == i['name']:
print("该用户已存在")
return #退出当前函数,后面的代码不执行 # 准备空字典 字典新增数据 列表追加字典
info_dict = {}
info_dict['id'] = new_id
info_dict['name'] = new_name
info_dict['tel'] = new_tel
# print(info_dict)
info.append(info_dict)
print(info) def del_info():
# 删除学员
del_name = input("请输入要删除学员的姓名:")
global info for i in info:
if del_name == i["name"]:
info.remove(i)
break
else:
print("该学员不存在") print(info) def modify_info():
# 修改函数
modify_name = input("请输入要修改学员的姓名:")
global info
for i in info:
if modify_name == i['name']:
i['tel'] = input("请输入新的手机号:")
break
else:
print("该学员不存在")
print(info) def search_info():
# 查询学员信息
search_name = input("请输入要查询学院的姓名")
global info
for i in info:
if search_name == i['name']:
print("查找到学员信息如下:")
print("学号%s,姓名%s,手机号%s"% (i['name'],i['name'],i['tel']))
break
else:
print("该学员不存在") def show_info():
# 显示所有学员信息
print("学号\t姓名\t手机号")
for i in info:
print(i['id'],end = '\t')
print(i['name'],end = '\t')
print(i['tel']) # 1显示功能界面
while True:
info_print()
# 2用户输入功能序号
user_num = int(input("请输入功能序号:"))
# 3 按照用户输入的功能序号,执行不同的功能
if user_num == 1:
add_info()
elif user_num == 2:
del_info()
elif user_num == 3:
# print("修改")
modify_info()
elif user_num == 4:
# print("查询")
search_info()
elif user_num == 5:
# print("显示所有")
show_info()
elif user_num==6:
# print("退出")
# 程序想要结束,退出终止while True
exit_flag = input("确定要退出吗?yes or no")
if exit_flag =='yes':
break
else:
print("输入有误!!!")

python实现学生信息系统的更多相关文章

  1. nwafu - java实习 JDBC练习 - 学生信息系统界面

    学生信息系统界面的实现 - JDBC writer:pprp 登录界面的实现: 分为两个部分: 1.LoginFrame.java : 用windowbuilder进行快速搭建界面,构建好登录的界面, ...

  2. python实现学生选课系统 面向对象的应用:

    一.要求: 选课系统 管理员: 创建老师:姓名.性别.年龄.资产 创建课程:课程名称.上课时间.课时费.关联老师 使用pickle保存在文件 学生: 学生:用户名.密码.性别.年龄.选课列表[].上课 ...

  3. 1、纯python编写学生信息管理系统

    1.效果图 2.python code: class studentSys(object): ''' _init_(self) 被称为类的构造函数或初始化方法, self 代表类的实例,self 在定 ...

  4. python之学生信息管理系统

    1 #!usr/bin/python 2 #encoding=utf-8 3 4 #1. 打印学生管理系统界面 5 def printStd(): 6 print ("*"*50) ...

  5. Java程序设计——学生信息系统

    1.团队课程设计博客链接 http://www.cnblogs.com/YYYYYYY/p/7065278.html 2.个人负责模块说明 2.1 管理界面 2.2 清空:单击清空键,可清空数据栏 2 ...

  6. python Django学生管理

    Django 学生管理系统 1. 一对一 班级  模态增加 编辑 <!DOCTYPE html> <html lang="en"> <head> ...

  7. Python实现学生系统

    # 4. 修改之前的学生信息管理程序,实现添加菜单和选择菜单操作功能: # 菜单: # +-----------------------------+ # | 1) 添加学生信息 | # | 2) 查 ...

  8. 学生信息系统(json模块解决数据持久化)

    将学生管理的案例,学生信息由原来的只有姓名,拓展为包含,姓名,年龄,两个属性:完成对应的增.删.查.改,操作 import json,os,time,sys student_list = [] Fil ...

  9. python 04 学生信息管理系统

    今天任务不多,做了学生信息管理系统1.0,使用字典存储学生个体信息,列表存储学生字典.注意dict定义要在循环体内,若定义成全局变量或循环体外,则旧数据会被新数据覆盖.dict属于可变类型数据,内容改 ...

随机推荐

  1. nodejs之路由

    声明:在写nodejs代码的时候,很多模块可以封装保存起来,以后的项目都会用到. 1.路由模块 var url=require('url'); //封装方法改变res 绑定res.send() fun ...

  2. redis的LRU策略理解

    首先看下serverCron中,服务器每次循环执行的时候,都会刷新server.lrulock. int serverCron(struct aeEventLoop *eventLoop, long ...

  3. Selenium 2自动化测试实战11(键盘事件)

    一.键盘事件 1.Keys()类提供了键盘上几乎所有按键的方法,如下实例: #coding:utf-8 from selenium.webdriver.common.keys import Keys ...

  4. 【转】Unity ZTest 深度测试 & ZWrite 深度写入

    原文连接:https://www.cnblogs.com/ljx12138/p/5341381.html 参考另一篇写的比较好的:Unity Shader中的 ZTest & ZWrite 初 ...

  5. Web05_jQuery

    在官方网站下载包,下载不带有min的包 http://jquery.com/download/ 案例一:使用JQ完成首页定时弹出广告图片 01_JQ入门 01_jQuery入门.html <!D ...

  6. LeetCode.1022-根到叶路径二进制数之和(Sum of Root To Leaf Binary Numbers)

    这是小川的第381次更新,第410篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第243题(顺位题号是1022).给定二叉树,每个节点值为0或1.每个根到叶路径表示以最高 ...

  7. win10更新导致chrome打开网页速度太慢

    升级win10之后如果出现chrome内核的浏览器网页总是打不开 打开很慢 而ie和edge是可以正常访问的 用这个方法可以 我弄了几天终于 搞好了 我直接转载过来了 近期,工程师收到大量反馈360浏 ...

  8. 在Linux上实现Python调用C语言函数

    一般思路 Python中内置ctypes库,需调用c编译成的.so文件来实现函数调用. 假设我们所需调用的c文件名为test.c,文件里有我们需要的函数func(x,y). 将.c文件编译成 .so文 ...

  9. echarts 饼图-->如何修改legend模板?

    首先需要在初始化图表的方法中过滤一下数据 ,将你需要的 名称  所占百分比 所占数量  筛选出来 let dataFilter = [ { value: 20, name: "未知" ...

  10. 如何实现Java线程的 阻塞/唤醒(和暂停/继续 类似)

    以下为线程 阻塞/唤醒  主要代码 public class MyThread extends Thread { //无意义 private final Object lock = new Objec ...