python制作学生管理系统_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):

item = search_stu(name)

stus.remove(item)

def search_stu(name):

flag = False

for s in stus:

if s['name'] == name.strip():

print(s)

flag = True

return s

if flag == False:

print('该学生不存在')

return None

def query_all_stu():

print('序号\tid\tname\tage')

for i, stu in enumerate(stus, 1):

print(i, end="")

print('\t%s\t%s\t%s' % (stu['id'], stu['name'], stu['age']))

def print_menu():

print('=' * 30)

print('学生管理系统'.center(30))

print('输入1:添加学生')

print('输入2:查找学生')

print('输入3:修改学生')

print('输入4:删除学生')

print('输入5:查看所有学生')

print('输入6:退出')

def file_read():

try:

file_name=r'stu.txt'

if os.path.exists(file_name):

f = open(file_name, 'r', encoding='utf-8')

while True:

line_text = f.readline()

if line_text == "":

break

line_list = line_text.split()

dict_item={'id':line_list[0],'name':line_list[1],'age':line_list[2]}

stus.append(dict_item)

print(line_list)

f.close()

else:

print('file is not exist.')

except Exception as e:

print(e)

finally:

print('file_read methon is exec completed.')

def file_write():

try:

file_name = r'stu.txt'

if os.path.exists(file_name):

os.remove(file_name)

f = open(file_name, 'w', encoding='utf-8')

for item in stus:

line_text = "%s\t%s\t%s" % (item['id'], item['name'], item['age'])

f.write(line_text)

f.write('\n')

f.close()

except Exception as e:

print(e)

finally:

print('file_write methon exec over..')

def main():

file_read()

while True:

print_menu()

operate = input('请输入你想要的操作:')

if operate == "1":

add_stu()

elif operate == "2":

sname = input("输入学生姓名:")

search_stu(sname)

elif operate == "3":

pass

elif operate == "4":

sname = input("请输入删除学生的姓名:")

remove_stu(sname)

elif operate == "5":

query_all_stu()

else:

file_write()

print('exit......')

break

main()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值