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

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


 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. Appium移动端自动化测试之应用操作详解(四)

    应用操作篇 1.1).安装应用 desired_caps = { 'platformName': 'Android', 'platformVersion': '5.0.0.0', 'deviceNam ...

  2. C#中的枚举使用

    基本用法 默认从0开始分配各个枚举值对应的数字值 public enum VariableType { Type1, Type2 } 指定各个枚举值对应的数字值 public enum Variabl ...

  3. Insus.NET最近想更换一部手机

    Insus.NET曾经使用过好几部手机.给Insus.NET工作与生活上带来了方便.最近想更换一部新手机,因此记念一下以前使用过的手机.当时Insus.NET没有相机,下面图片是网上找的(前四部): ...

  4. 如果plsql连接没问题,但程序中报ORA-12504的错误

    说明程序中配置数据库连接的地方没有写tnsnames.ora中的SERVICE_NAME,或者SERVICE_NAME写的有错,检查一下,改正应该就好了

  5. 【转】VS2010中无System.Data.OracleClient引用的问题

    源地址:http://blog.csdn.net/pinchw/article/details/30465749

  6. 数据解析之xpath

    一.环境安装 下载lxml pip install lxml 二.使用 XPath 使用路径表达式来选取 XML 文档中的节点或节点集.节点是通过沿着路径 (path) 或者步 (steps) 来选取 ...

  7. SDUT OJ 数组计算机(线段树)

    学长推荐了这个博客详细的介绍了线段树的建立.查找.更新: 数组计算机 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Prob ...

  8. 前端CSS的基本素养

    前端开发的三驾马车——html.css.js,先谈谈CSS CSS 前期:解决布局.特效.兼容问题 中级:网站风格的制定.色调.模块.布局方式.交互方式.逻辑设计等 高级:模块命名.类的命名.文件的组 ...

  9. 如何在SQLServer中处理每天四亿三千万记录的(数据库大数据处理)

    首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是一开始就给大家一个正确的结果,如果文中有不对的地方,请各位数据库大牛给予指正,以便我能够更好的处理此次业务. ...

  10. jQuery 遍历 - closest() 方法

    jQuery 遍历参考手册 实例 本例演示如何通过 closest() 完成事件委托.当被最接近的列表元素或其子后代元素被点击时,会切换黄色背景: $( document ).bind("c ...