"""提示:代码中的内容均被注释,请参考,切勿照搬"""

"""注意:代码切勿照搬,错误请留言指出"""


 class Student:
def __init__(self,No,name,sex,age):
self.No = No
self.name = name
self.sex = sex
self.age = age def show(self):
print("%s %s %s %d"%(self.No,self.name,self.sex,self.age)) class StudentList:
def __init__(self):
self.students=[] #存信息的空list def show(self):
print("%s %s %s %d" % (No,name,sex,age))
for s in self.students:
s.show() def __insert(self,s):
i = 0
while (i<len(self.students) and s.No> self.students[i].No): ##!!
i=i+1
if (i<len(self.students) and s.No== self.students[i].NO): ##!!
print(s.No+"已经存在")
return False
self.students.insert(i,s)
print("添加成功")
return True def __update(self,s):
flag = False
for i in range(len(self.studenlist)):
if(s.No == self.students[i].No):
self.students[i].name = s.name
self.students[i].sex = s.sex
self.students[i].age = s.age
print("修改成功")
flag = True
break
if (not flag):
print("没有这个学生")
return flag def __delete(self,No):
flag = False
for i in range(len(self.students)):
if (self.students[i].No == No):
del self.students[i]
print("删除成功")
flag = True
break
if(not flag):
print("没有这个学生")
return flag #用户预输入数据
def insert(self):
No = input("NO:")
name = input("Name:")
while True:
sex = input("Sex:")
if(sex=='男' or sex=='女'):
break
else:
print("----Sex数据有误----")
age = int(input("Age:"))
if(No!='' or name!=''):
self.__insert(Student(No,name,sex,age))
else:
print("----学号or性别不能为空----") def update(self):
No = input("NO:")
name = input("Name:")
while True:
sex = input("Sex:")
if (sex == '男' or sex == '女'):
break
else:
print("----Sex数据有误----")
age = int(input("Age:"))
if (No != '' or name != ''):
self.__update(Student(NO, name, sex, age))
else:
print("----学号or性别不能为空 ----") def delete(self):
No = input("No:")
if(No != ''):
self.__delete(No)
#用户输入
def scanf(self):
while True:
s=input(">>>")
if (s =='insert'):
self.insert()
elif (s =='update'):
self.update()
elif (s =='delete'):
self.delete()
elif (s =='show'):
self.show()
elif (s =='exit'):
break
else:
print("----指令输入错误----") s=StudentList()
s.scanf()

python_学生信息管理实例的更多相关文章

  1. 【学员管理系统】0x02 学生信息管理功能

    [学员管理系统]0x02 学生信息管理功能 写在前面 项目详细需求参见:Django项目之[学员管理系统] Django框架大致处理流程 捋一下Django框架相关的内容: 浏览器输入URL到页面展示 ...

  2. Laravel之简单的学生信息管理平台

    laravel框架写的简易版的学生信息管理平台,贯穿了laravel的控制器.视图.模板.模型.中间件.路由规则的使用. 页面是使用BootStrap前端框架搭建 使用laravel实现了增删改查的功 ...

  3. vue实现简单学生信息管理案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. 098 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 02 编写并测试Subject类

    098 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 02 编写并测试Subject类 本文知识点:编写并测试Subject类 说明: ...

  5. 099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类

    099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类 本文知识点:编写并测试Subject类 说明: ...

  6. 101 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 05 通过方法实现学生类与专业类关联——方案二

    101 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 05 通过方法实现学生类与专业类关联--方案二 本文知识点:通过方法实现学生类与 ...

  7. JavaWeb -学生信息管理实践(JDBC+web+三层架构+DBUtil构造思路)

    前言: 1 该程序使用动态web项目 2 该程序使用SQL server需导入对应包( 具体可看前篇----JDBC的使用) 3 三层架构思想: ①表示层 前台:jsp/html等 作为前台与用户交互 ...

  8. C语言实践——学生信息管理

    这是本人做的第一个实践项目,用的知识都是书上有的,没有很多很复杂的知识 同时因为没有学习 C语言 图形方面的知识,所以界面做得很丑,暂时先这样吧 源文件: #include <stdio.h&g ...

  9. python_如何对实例属性进行类型检查?

    案例: 在某项目中,我们实现了一些类,并希望能像静态语言那样对他们的实例属性进行类型检查 p = Person() p.name = 'xi_xi'         # 必须是str p.age = ...

随机推荐

  1. WCF把书读薄(2)——消息交换、服务实例、会话与并发

    上一篇:WCF把书读薄(1)——终结点与服务寄宿 八.消息交换模式 WCF服务的实现是基于消息交换的,消息交换模式一共有三种:请求回复模式.单向模式与双工模式. 请求回复模式很好理解,比如int Ad ...

  2. plsql中的执行体

    在plsql中的sql windows窗口中,可以编写一段执行体来达到一定的目的,类似于写一段程序,可有逻辑判断. 大概的格式为 declare ----定义变量 begin ----- 执行体: e ...

  3. Claims Based Authentication and Token Based Authentication和WIF

    基于声明的认证方式,其最大特性是可传递(一方面是由授信的Issuer,即claims持有方,发送到你的应用上,注意信任是单向的.例如QQ集成登录,登录成功后,QQ会向你的应用发送claims.另一方面 ...

  4. xen创建pvm和hvm的过程

    these are the basic steps of installing domU with xen-tools in ubuntu13.04 64bit in xen4.3 you can a ...

  5. URAL 1204. Idempotents (扩展欧几里得)

    题目链接 题意 : 给你一个同余方程, x*x ≡ x  (mod n),让你求出所有的小于n的x. 思路 : 先来看同余的概念 :给定一个正整数m,如果两个整数a和b满足a-b能被m整除,即m|(a ...

  6. 安装vmtools Error: Unable to execute "/usr/bin/vmware-uninstall-tools.pl.

    Error: Unable to execute "/usr/bin/vmware-uninstall-tools.pl. 安装vmware tools错误解决办法 很多朋友都在用vmwar ...

  7. Sharepoint 文档知识管理系统--Word在试图打开文件时遇到错误

    在系统开发中,遇到问题:SharePoint 2010与Office 2010安装在一台服务器上,当用Office打开SharePoint文档库中的文档时,遇到“Word在试图打开文件时遇到错误,请尝 ...

  8. 使用VS Code开发C++

    1. 参考/转载 vs code进行c/c++开发 VSCode 的第一个C++程序(windows)[更新2018.10.28] 2. C++开发相关插件(扩展商店中直接搜索) 至少要装C/C++. ...

  9. postman提取返回值和断言

    将token接口中返回的access_token设置为全局变量. 如:token接口返回格式为: { "data": { "access_token": &qu ...

  10. Unity---动画系统学习(3)---使用状态机来实现走、跑、转弯等的动画切换

    1. 初始设置 用动画学习笔记(2)中方法,把动画全都切割好. 拖进状态机并设置箭头.并设置具体箭头触发的事件. 在状态机左侧中添加参数,Float和Int类型参数只能从-1~1之间变化 Float: ...