Python学生成绩管理系统简洁版

yipeiwu_com6年前Python基础

讲起学生成绩管理系统,从大一C语言的课程设计开始,到大二的C++课程设计都是这个题,最近在学树莓派,好像树莓派常用Python编程,于是学了一波Python,看了一点基本的语法想写点东西练下手。

开发环境:Ubuntu+Python2.7

代码如下:

#coding=utf-8 
 
#保存学生信息 
studentList=[] 
 
def addInfo(name,addr): 
 tempInfo={} 
 tempInfo['name']=name 
 tempInfo['addr']=addr 
 studentList.append(tempInfo) 
 print(studentList) 
 
def delInfo(number): 
 if number<len(studentList) and number>=0 : 
 del studentList[number] 
 
 else: 
 print("您输入的序号有误:") 
 
def changeInfon(modifNum,name,addr): 
 if modifNum<len(studentList) and modifNum>=0 : 
 tempInfo={} 
 tempInfo['name']=name 
 tempInfo['addr']=addr 
 studentList[modifNum]=tempInfo 
 
 else: 
 print("您输入的序号有误:") 
 
def findInfo(findName): 
 i=0 
 for info in studentList: 
 if findName ==info['name']: 
  print("您要查找的信息为%i %s %s"%(i,info['name'],info['addr'])) 
 
 
while True: 
 print("-"*30) 
 print("请输入您的选项") 
 print("1.新增学生信息") 
 print("2.删除学生信息") 
 print("3.修改学生信息") 
 print("4.查询学生信息") 
 print("-"*30) 
 
 
#等待用户输入选项 
 choose=int(raw_input("请输入您的选项:")) 
 
 
 if 1==choose: 
 name=raw_input("请输入学生的姓名:") 
 addr=raw_input("请输入学生的籍贯:") 
 addInfo(name,addr) 
 
 elif 2==choose: 
 if 0==len(studentList): 
  print("当前系统没用任何学生信息") 
  continue 
 i=0 
 for info in studentList: 
  print("%i %s %s"%(i,info['name'],info['addr'])) 
  i+=1 
 number=int(raw_input("请输入要删除的序号:")) 
 delInfo(number) 
 print("删除之后的信息为:%s"%studentList) 
 
 elif 3==choose: 
 i=0 
 for info in studentList: 
  print("%i %s %s"%(i,info['name'],info['addr'])) 
  i+=1 
 modifNum=int(raw_input("请输入要修改的序号:")) 
 name=raw_input("请输入学生的姓名:") 
 addr=raw_input("请输入学生的籍贯:") 
 
 changeInfon(modifNum,name,addr) 
 print("修改之后的信息为:%s"%studentList[modifNum]) 
 
 elif 4==choose: 
 findName=raw_input("请输入要查找的学生的姓名:") 
 findInfo(findName) 
 
 else : 
 print("您输入的有误,请重新输入") 
 continue 

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python+numpy实现的基本矩阵操作示例

本文实例讲述了python+numpy实现的基本矩阵操作。分享给大家供大家参考,具体如下: #! usr/bin/env python # coding: utf-8 # 学习num...

numpy.delete删除一列或多列的方法

基础介绍: numpy.delete numpy.delete(arr, obj, axis=None)[source] Return a new array with sub-a...

基于Python函数的作用域规则和闭包(详解)

作用域规则 命名空间是从名称到对象的映射,Python中主要是通过字典实现的,主要有以下几个命名空间: 内置命名空间,包含一些内置函数和内置异常的名称,在Python解释器启动时创建,一...

Python 使用 docopt 解析json参数文件过程讲解

Python 使用 docopt 解析json参数文件过程讲解

1. 背景 在深度学习的任务中,通常需要比较复杂的参数以及输入输出配置,比如需要不同的训练data,不同的模型,写入不同的log文件,输出到不同的文件夹以免混淆输出 常用的parser....

python跳过第一行快速读取文件内容的实例

Python编程时,经常需要跳过第一行读取文件内容。简单的做法是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作。 相应的Python代码如...