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

yipeiwu_com7年前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一行sql太长折成多行并且有多个参数的方法

sql语句 有一个非常长的sql,用编辑器打开编写的时候太长了导致编写非常吃力,而且容易错乱,我想做的是把A,B,C三个变量赋值到sql中的字段中去 A=1 B=2 C=3 sql...

Python调用命令行进度条的方法

本文实例讲述了Python调用命令行进度条的方法。分享给大家供大家参考。具体分析如下: 关键点是输出'\r'这个字符可以使光标回到一行的开头,这时输出其它内容就会将原内容覆盖。 im...

Python socket模块ftp传输文件过程解析

这篇文章主要介绍了Python socket模块ftp传输文件过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 使用环境:pyt...

浅谈Python中的可变对象和不可变对象

什么是可变/不可变对象 不可变对象,该对象所指向的内存中的值不能被改变。当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份后再改变,这会开辟一个新的地址,变量再指向这...

Python字典生成式、集合生成式、生成器用法实例分析

本文实例讲述了Python字典生成式、集合生成式、生成器用法。分享给大家供大家参考,具体如下: 字典生成式: 跟列表生成式一样,字典生成式用来快速生成字典,不同的是,字典需要两个值...