Python顺序表操作实例:学生信息管理系统

创始人
2024-12-31 10:39:52
0 次浏览
0 评论

python顺序表?

这个问题的答案如下:你可以根据你的要求稍微改变一下#-*-coding:cp936-*-classStuInfo:def__init__(self):self.Stu=[{"Sno":"1","姓名":"姓名","中文分数":64,"数学分数":34,"英语hScore":94,"ComputerScore":83},{"Sno":"2","Sname":"姓名","中文分数":44,"数学分数":24,"英语分数":44,"ComputerScore":71},{"snow":"3","name":"name","chinesescore":74,"mathscore":35,"englishscore":74,"computerscore":93},{"snow":"4","姓名":"姓名","中文分数":94,"mathscore":54,"englishscore":24,"computerscore":73}]self.attribute={"Sno":"studentID","name":"name","chinesescore":"ChineseScore","mathsscore":"mathscore","englishscore":"Englishscore","computerscore":"computerscore"}def_add(self):''Add''singleInfo={}foriinself.attribute:if"Score"ini:singleInfo[i]=int(raw_input(self.attribute[i]+"\n"))else:singleInfo[i]=raw_input(self.attribute[i]+"\n").strip()self.Stu.append(singleInfo)print"追加成功OK"foriinsingleInfo:printi,"=",singleInfo[i]def_del(self):"""删除学号为Sno的记录"""Sno=raw_input(“学生id:\n")self.Stu.remove(self.__getInfo(Sno))print"删除成功OK"def_update(self):""更新数据"""Sno=raw_input("学号\n").strip()prefix='修改'updateOperate={'1":"中文分数","2":"数学分数","3":"英语分数","4":"计算机分数"}foriinupdateOperate:printi,"-->",prefix+self.attribute[updateOperate[i]]getoperaNum=raw_input("选择操作:\n")ifgetOperateNum:getNewValue=int(raw_input("输入新值do:\n"))record=self.__getInfo(Sno)record[updateOperate[getOperateNum]]=getNewValueprint"修改"+record["Sname"]+""+str(updateOperate[getOperateNum])+"score=",getNewValue,"\n成功OK"def_getInfo(self):""查询数据"""whileTrue:print"1->学号查询2->条件查询3->退出"getNum=raw_input("选择:\n")ifgetNum=='1":Sno=raw_input("学号:\n")printfilter(lambdarecord:record["Sno"]==Sno,self.Stu)[0]elifgetNum=='2':pprint"ChineseScoreChineseScore;","MathsScoreMathScore;","EnglishScoreEnglishScore;","ComputerScoreComputerScore;"print"==等于、小于、大于>、大于等于>=、<=小于等于、不等于!=“打印”输入查询条件,格式如下:中文Score>=60"expr=raw_input("position:\n")Infos=self.__getInfo(expr=expr)ifInfos:print"共有%d条记录"%len(Infos)foriinInfos:printielse:print"记录为空'elifgetNum=='3':breaelse:passdef__getInfo(self,Sno=None,expr='''):'''学生基于number_getInfo('111111'')查询数据,基于Score_getInfo('EnglishSorce>80'')ifSno:returnfilter(lambdarecord:record)["Sno"]==Sno,self.Stu)[0]foroperatein[">=",">","<=","<","==,"!="]:ifoperateinexpr:gradeName,value=expr.split(operate)returnfilter(lambdarecord:eval(re)pr(record[gradeName.strip()])+operate+value.strip()),self.Stu)return{}def_showAll(self):""显示所有记录"""foriinself.Stu:printi@staticmethoddeftest():""测试"""_StuInfo=StuInfo()whileTrue:print"1->输入数据2->修改数据3->删除数据4->查询数据5->查看数据6->输出exit"t=raw_input("select:\n")ift=='1":print"输入数据"_StuInfo._add()elift=='2":print"修改数据"_StuInfo._update()elift=='3":print"删除数据"_StuInfo._del()elift=='4":Print"查询数据"_StuInfo._getInfo()elift=='5":Print"所有记录show"_StuInfo._showAll()elift=='6":breakelse:passif__name__=='__main__":StuInfo.test()我希望这个答案对您的问题有用。
谢谢。

2有一份参加Python课程的学号名单B01,B02,B03,B05,B08,B10,请计算共有多?

给定一个字符串,该字符串可以包含大写和小写字母以及标点符号。
输出字母I(包括大小写)出现的次数。
测试数据:可能会下雨,但上面有彩虹波瓦。
将给定的字符串序列按照字符ASCII码顺序从小到大排序并输出。
测试数据:adecbtk包含参加过Python课程的学生IDB01、B02、B03、B05、B08和B10的列表。
请统计有多少学生参加了这门课程。
请分别使用List和String方法来解决这个问题。
输入一组单词,用逗号分隔每个单词,然后计算单词数。
对于三引号表示的字符串S,统计行数。
行数为4。
查找给定字符串中最近出现的输入子字符串的索引。
给定字符串:在呼叫himaman之前,man必须走多少条路。
如果输入测试查询字符串是man,则输出索引为60。
输入文件名,判断是否为文本文件,如果是则输出True,否则输出False。
小张举办生日聚会。
请帮助小张写一个程序,输入参加聚会的所有朋友的名字,包括汤姆、杰瑞、维尼、路飞(每个名字之间用空格分隔),并将名字保存到一个列表中。
,并向列表中插入两个标签字符串:“friends”作为列表的开始标签,“#”作为列表的结束标签。
宴会结束后,小张想知道哪位嘉宾维尼会来参加宴会。
某学校聘请了一名校园歌手组织了比赛。
每位歌手的评分由10名评委和观众共同决定。
最终的评分规则是去掉10位评委的最高分和最低分,以及所有观众评委的分数。
评委给出的10个分数分别是:9、9、8.5、10、7、8、8、9、8、10。
观众评委给出的总分是9分。
请计算歌手的最终得分。

python中用openpyxl读取excel表格数据,并且转换成字典格式

”就像标题一样。
Excel表格数据包含班级、姓名、性别和学号等信息。
如何读取所有数据并将每一行数据显示为字典?比如这样:班级:一班(1):姓名:小明,性别:男,学号:110'''''建议:首先阅读各个标题栏的信息,并在list:['班级','姓名','性别','学号']然后读取标题下面的每一行并将其插入到列表中:['第1部分(1)','小明''男','110']关键使用zip函数首先了解zip函数将两个列表中的第一个和第一个数据连接成一个元组,将第二个和第二个数据连接成一个元组。
组等,但要将它们转换为列表,请使用list()函数,要将列表转换为字典,请使用diction。
{}函数''''importopenpyxl#将数据读入Excel#第一步打开工作簿wb=openpyxl.load_workbook('cases.xlsx')#第二步加载sheetSsheet=wb['Sheett1']#加载行中的数据查找并转换为列表#first首先定义总列表和列表中的所有行rows_data=list(sheet.rows)#获取表单的表头数据(第一行),即列表的第一个成员titles=[]fortitleinrows_data[0]:titles.append(title.value)#print(title.value)#type#传递除第一行以外的其他行fora_rowinrows_data[1:]:#row_data临时存储数字会有帮助的。
每行根据a_row_data=[]#强制每行的单元格(forcellina_row):#print(cell.value)#获取单元格值#判断单元格值是否为字符串类型,#因为有些为空#string被转换为python表达式,如果为空且不是单词。
对于字符串类型,ifisinstance(cell.value,str):a_row_data.append(eval(cell.value))else:a_row_data.append(cell.value)#print(da)appendta)#打印查看#表格标题和数据内容到字典rows_dict=dict(list(zip(titles,a_row_data)))#all_rows.append(rows_dict)print(rows_dict)
热门文章
1
Python中的format()方法:字... formatformat在python中的含义2222.22E+00Format...

2
Python编程入门:全面解析Pytho... python的基本语法基本的Python语法如下:1.变量的定义。在编程语言中,...

3
Python字符串大小写转换方法全解析 python中字母的大小写转换怎么实现?在Python中,大小写转换由内置函数处...

4
Python字典:轻松获取最小值键与计算... python在一个字典里,返回值最小元素对应的键,救解在Python字典中,如果...

5
Python字符串去重空格:strip(... Python去除字符串中空格(删除指定字符)的3种方法在Python编程中,处理...

6
Python数组元素数量计算技巧分享 Python输出数组有多少个元素?简介:在本文中,首席CTO笔记将向您介绍Pyt...

7
简述python中pass的作用 pass语句的作用在许多编程语言中,包括Python;PASS语句用于在代码块中...

8
Python def 关键字详解:函数定... def是什么意思编程?戴夫是什么意思?def是Python中的函数定义关键字,用...

9
python不区分大小写的方法 Python字符串不区分大小写在Python中,字符串操作默认区分大小写。但有时...

10
Python字典操作全解析:添加、修改、... &#65279;Pythondict字典基本操作(包括添加、修改、删除键...