用python实现简易学生管理系统

以前用C++和Java写过学生管理系统,也想用Python试试,果然“人生苦短,我用Python”。用Python写的更加简洁,实现雏形也就不到100行代码。

下面上代码

 1 #!/usr/bin/python3
 2 #coding=utf-8
 3 #__author__=‘jeavenwong‘
 4
 5
 6
 7
 8 #实现switch-case语句用
 9 class switch(object):
10     def __init__(self, value):
11         self.value = value
12         self.fall = False
13
14     def __iter__(self):
15         """Return the match method once, then stop"""
16         yield self.match
17         raise StopIteration
18
19     def match(self, *args):
20         """Indicate whether or not to enter a case suite"""
21         if self.fall or not args:
22             return True
23         elif self.value in args: # changed for v1.5, see below
24             self.fall = True
25             return True
26         else:
27             return False
28
29 class student:
30     def __init__(self,name,age,id,grade):
31         self.next = None
32         self.name = name
33         self.age = age
34         self.id = id
35         self.grade = grade
36     def show(self):
37         print(‘name:‘,self.name,‘ ‘,‘age:‘,self.age,‘ ‘,‘id:‘,self.id,‘ ‘,‘grade:‘,self.grade)
38
39 class stulist:
40     def __init__(self):
41         self.head = student(‘‘,0,0,0)
42     def display(self):
43         p = self.head.next
44         while p:
45             p.show()
46             p = p.next
47     def insert(self):
48         print(‘please enter:‘)
49         name = input(‘name:‘)
50         age = input(‘age:‘)
51         id = input(‘id:‘)
52         grade = input(‘grade:‘)
53         newstu = student(name,age,id,grade)
54         p = self.head
55         while p.next:
56             p = p.next
57         p.next = newstu
58     def query(self):
59         name = input(‘please enter the name you want to query:‘)
60         p = self.head.next
61         while p:
62             if p.name == name:
63                 p.show()
64             p = p.next
65
66
67 def main():
68     stulist1 = stulist()
69     user_input = input(‘please enter the OPcode:‘)
70     while user_input:
71         print(‘a--insert/b--display/c--query/o--text/‘‘--defult‘)
72         for case in switch(user_input):
73             if case(‘a‘):
74                 stulist1.insert()
75                 user_input = input(‘please enter the OPcode:‘)
76                 break
77             if case(‘b‘):
78                 stulist1.display()
79                 user_input = input(‘please enter the OPcode:‘)
80                 break
81             if case(‘c‘):
82                 stulist1.query()
83                 user_input = input(‘please enter the OPcode:‘)
84                 break
85             if case(): # default
86                 print(‘please enter the OPcode...‘)
87                 user_input = input(‘please enter the OPcode:‘)
88                 break
89
90 if __name__ == "__main__":
91     main()

下面是运行结果:

原文地址:https://www.cnblogs.com/jeavenwong/p/8270485.html

时间: 2024-10-29 14:40:14

用python实现简易学生管理系统的相关文章

python开发的学生管理系统

python开发的学生管理系统(基础版) #定义一个函数,显示可以使用的功能列表给用户 def showInfo(): print("-"*30) print(" 学生管理系统 ") print(" 1.添加学生的信息") print(" 2.删除学生的信息") print(" 3.修改学生的信息") print(" 4.查询学生的信息") print(" 5.遍历所有学生的信

python简单实现学生管理系统

#!/usr/bin/env python # -*- coding: UTF-8 -*- # Author:Du Fei import os #学号,姓名,年龄,性别,身高 allStudentsList=[] #从文件中读取数据 def readFromFile(fileName): if not os.path.exists(fileName):# 如果文件不存在,则新增一个空文件 f = open(fileName,"w") f.close() with open(fileNa

python实现简易工资管理系统(Salary Manage)源码

一.需求: 1.导入文件读取员工的信息和工资信息,最后将增加.删除或修改的员工工资信息写入原来的文件中 2.能够实现员工工资信息的增删改查 3.当增加和修改员工信息时用户用空格分隔员工姓名和薪资 4.实现退出功能 二.思路 1.首先需要将包含有员工薪资信息的文件读出来存储到一个容器里,因为员工姓名和薪资一一对应,因此想到字典的key--->value机制,将员工薪资信息存储到字典中. 2.写一个函数让用户选择该如何操作----->add.delete.modify.search(增删改查)以及

Django_学生管理系统

一. Django简易学生管理系统 1.在pycharm中创建工程student_manage_system,添加app:student_manage 2.配置静态文件:在工程项目目录下新建目录static,并在settings.py中追加代码 STATICFILES_DIRS=(os.path.join(BASE_DIR,'static'),) 3.设计学生管理系统所需数据库 在studnet_manage/models.py创建班级管理表.学生管理表.老师管理表 from django.db

简易学生成绩管理系统

做了一个小型的成绩管理系统.主要代码如下: /* * 功能:简易学生成绩管理系统 */package day7; import java.util.Scanner; public class HomeWork { static Scanner scan=new Scanner(System.in); static String[] user=new String[2]; static String[] password=new String[2]; static String[] name=ne

简易学生成绩管理管理系统(java描述)

没正式学过java,但是系统学过C++后,初略的看了下java的基本语法,于是我就尝试着用java来写个简单的学生管理系统,功能不齐全,以后有空再补充吧. 写的时候定义了不同的包名字,如jeaven1 , jeaven2 , jeaven3 先上Student类: 1 package jeaven1; 2 import java.io.*; 3 4 public class Student 5 { 6 private String name; 7 private String id; 8 pri

Python学生管理系统示例

import os stus = [] # 学生信息列表(每个学生的信息以字段存储) def add_stu():sid = input('输入学生学号:')sname = input('输入学生姓名:')sage = input('输入学生年龄:')dict_stu = {'id': sid.strip(), 'name': sname.strip(), 'age': int(sage.strip())}stus.append(dict_stu) def remove_stu(name):it

Python练习【4】【学生管理系统】

代码: ## 定义界面列表 stu_interface=['学生管理系统','1.管理员登录','2.学生登录'] admin_login=['管理员操作界面','1.管理员密码修改','2.添加学生的信息','3.删除学生的信息','4.修改学生的信息','5.查询学生的信息','6.列出学生的信息','7.退出系统'] stu_login=['学生操作界面','1.查询个人信息','2.修改信息'] stu_chInfo=['修改个人信息','1.修改年龄','2.修改密码'] flag=0

Java 图形界面开发--图文并茂建立学生管理系统

图形用户界面(Graphics User Interface,GUI)是用户与程序交互的窗口,比命令行的界面更加直观并且更好操作. 这是本人在学习java图形界面开发阶段一步一步实现的超级简易的学生管理系统.虽然说不入大神法眼,但这确实是费了自己不少心血.对于我这样的菜鸟来说,考虑不周到,一不小心就Exception,然后就是自己调呀调.在此分享出来希望对和我一样的菜鸟有帮助. 程序完整代码下载地址见: https://github.com/chaohuangtianjie994/The-Sys