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

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


 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. css总结15:CSS3 圆角

    1 css圆角: 1.1 浏览器支持:-webkit- 或 -moz- 前面的数字表示支持该前缀的第一个版本. 1.2 属性 border-radius: 代码如下: #rcorners1 { bor ...

  2. (转)什么?你还不会写JQuery 插件

    原文地址:http://www.cnblogs.com/joey0210/p/3408349.html 前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jque ...

  3. MySQL性能调优与架构设计——第4章 MySQL安全管理

    第4章 MySQL安全管理 前言 对于任何一个企业来说,其数据库系统中所保存数据的安全性无疑是非常重要的,尤其是公司的有些商业数据,可能数据就是公司的根本,失去了数据的安全性,可能就是失去了公司的一切 ...

  4. 关于spring”通配符的匹配很全面, 但无法找到元素 'context:component-scan' 的声明“的错误

    关于spring配置的问题 近日学习spring时遇到了这个问题: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreExcept ...

  5. JAVA的IO处理【转】

    I/O简介 IO是输入和输出的简称,在实际的使用时,输入和输出是有方向的.就像现实中两个人之间借钱一样,例如A借钱给B,相对于A来说是借出,而相对于B来说则是借入.所以在程序中提到输入和输出时,也需要 ...

  6. 【spring】InitializingBean接口

    apollo 源码中有这么一个类 public class ReleaseMessageScanner implements InitializingBean @Override public voi ...

  7. 使用TortoiseSVN新建及合并分支图文教程

    打开trunks目录,在trunks目录下新建两个文本文件A.java,B.java:   打开A.java输入以下内容: B.java文件可以随机输入些,本例中主要用于观察后续是否变化. 两个文件编 ...

  8. 斐讯 N1 刷 Armbian 5.75

    前言 不知不觉居然鸽了快半年的博客_(:3」∠)_ 好吧最近发现之前玩的 N1 Armbian 系统已经出到 5.75 了,之前刷 5.64 玩过,具体博文在此,说实话并不是很稳定,有线网络有时会卡死 ...

  9. Android 利用apache tomcat在自己的电脑上搭建服务器

    1.什么叫服务器 装了服务器端的软件的那台电脑被称为服务器.常见的服务器的软件有apache tomcat. 2.Tomcat 介绍 tomcat是一种轻量级的web容器服务器,使用tomcat可以实 ...

  10. 应大数据时代而写了个磁力搜索的网页- WWW.MOVIH.COM 磁力

    应大数据时代而写了个磁力搜索的网页- 索马里搜索磁力 http://www.,movih.com/ BT磁力示例网站:WWW.MOVIH.COM 采用分布式架构: JAVA系统:JBOSS7+EJB3 ...