本文实例为大家分享了python实现学生管理系统的具体代码,供大家参考,具体内容如下
一.面向过程版
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
import os
stu_list = []
def show_menu():
print ( '1.添加学生' )
print ( '2.删除学生' )
print ( '3.修改学生信息' )
print ( '4.查询单个学生信息' )
print ( '5.查询所有学生信息' )
print ( '6.退出系统' )
def insert_student():
name = input ( '请输入学生名字:' )
for stu in stu_list:
if stu[ 'name' ] = = name:
print ( '.........学生信息已存在........' )
return
age = input ( '请输入学生年龄:' )
gender = input ( '请输入学生性别:' )
stu_dict = { 'name' : name, 'age' : int (age), 'gender' : gender}
stu_list.append(stu_dict)
print ( "学生信息添加成功!" )
def remove_student():
name = input ( '请输入要操作的学生的名字:' )
for stu in stu_list:
if stu[ 'name' ] = = name:
stu_list.remove(stu)
print ( '删除成功!' )
break
else :
print ( '........该学生信息不存在,无法删除.........' )
def modify_student():
name = input ( '请输入要操作的学生的名字:' )
for stu in stu_list:
if stu[ 'name' ] = = name:
stu[ 'age' ] = int ( input ( '请输入新的年龄:' ))
print ( '修改成功!' )
break
else :
print ( '........该学生信息不存在,无法修改.........' )
def search_student():
name = input ( '请输入要操作的学生的名字:' )
for stu in stu_list:
if stu[ 'name' ] = = name:
print (f '姓名:{stu["name"]},年龄:{stu["age"]},性别:{stu["gender"]}' )
break
else :
print ( '........该学生信息不存在.......' )
def show_all_stu():
if len (stu_list):
for stu in stu_list:
print (f '姓名:{stu["name"]},年龄:{stu["age"]},性别:{stu["gender"]}' )
else :
print ( "目前没有学生信息!" )
def save():
f = open ( 'student.txt' , 'w' )
f.write( str (stu_list))
f.close()
def read_file():
global stu_list
if os.path.exists( 'student.tct' ):
f = open ( 'student.txt' , 'r' , encoding = 'utf-8' )
buf = f.read()
if buf:
stu_list = eval (buf)
f.close()
def main():
read_file()
while True :
show_menu()
opt = input ( '请输入用来选择的编号:' )
if opt = = '1' :
print ( '1.添加学生' )
insert_student()
elif opt = = '2' :
print ( '2.删除学生' )
remove_student()
elif opt = = '3' :
print ( '3.修改单个学生信息' )
modify_student()
elif opt = = '4' :
print ( '查询单个学生信息' )
search_student()
elif opt = = '5' :
print ( '5.查询所有学生信息' )
show_all_stu()
elif opt = = '6' :
print ( '欢迎下次使用本系统' )
save()
break
else :
print ( '输入有误,请重新输入' )
continue
input ( '........回车键继续操作........' )
main()
|
二.面向对象版
1.工程文件
2.main.py
1
2
3
4
5
|
import student_manage_sysytem as sms
if __name__ = = '__main__' :
stu_sms = sms.StudenManagerSystem()
stu_sms.start()
|
3.student.py
1
2
3
4
5
6
7
8
9
|
class Student():
def __init__( self , stu_id, name, age, gender):
self .sut_id = stu_id
self .name = name
self .age = age
self .gender = gender
def __str__( self ):
return f "{self.sut_id},{self.name},{self.age},{self.gender}"
|
4.student_manage_system.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
import student
class StudenManagerSystem():
def __init__( self ):
self .stu_dict = {}
@staticmethod
def __show_menu():
print ( '1.添加学生' )
print ( '2.删除学生' )
print ( '3.修改学生信息' )
print ( '4.查询单个学生信息' )
print ( '5.查询所有学生信息' )
print ( '6.退出系统' )
def __insert_student( self ):
stu_id = input ( '请输入学生学号:' )
if stu_id in self .stu_dict:
print ( '学生信息已经存在,不需要重复添加' )
return
name = input ( '请输入学生名字:' )
age = input ( '请输入学生年龄:' )
gender = input ( '请输入学生性别:' )
stu = student.Student(stu_id, name, age, gender)
self .stu_dict[stu_id] = stu
def __removw_student( self ):
stu_id = input ( '请输入学号:' )
if stu_id in self .stu_dict:
del self .stu_dict[stu_id]
print ( '学生已经删除' )
else :
print ( '学生信息不存在,无法删除' )
def __modify_student( self ):
stu_id = input ( '请输入学号:' )
if stu_id in self .stu_dict:
stu = self .stu_dict[stu_id]
stu.age = input ( '请输入新的年龄:' )
print ( '信息已经修改完毕' )
else :
print ( '学生信息不存在,无法修改' )
def __search_student( self ):
stu_id = input ( '请输入学号:' )
if stu_id in self .stu_dict:
stu = self .stu_dict[stu_id]
print (stu)
else :
print ( '学生信息不存在' )
def __save( self ):
f = open ( 'student.txt' , 'w' , encoding = 'utf-8' )
for stu in self .stu_dict.values():
f.write( str (stu) + '\n' )
f.close()
def __load_info( self ):
try :
f = open ( 'student.txt' , 'r' , encoding = 'utf-8' )
buf_list = f.readlines()
for buf in buf_list:
buf = buf.strip()
info_list = buf.split( ',' )
stu = student.Student( * info_list)
stu_id = info_list[ 0 ]
self .stu_dict[stu_id] = stu
f.close()
except Exception:
pass
def __show_all_info( self ):
for stu in self .stu_dict.values():
print (stu)
def start( self ):
self .__load_info()
while True :
self .__show_menu()
opt = input ( '请输入用来选择的编号:' )
if opt = = '1' :
print ( '1.添加学生' )
self .__insert_student()
elif opt = = '2' :
print ( '2.删除学生' )
self .__removw_student()
elif opt = = '3' :
print ( '3.修改单个学生信息' )
self .__modify_student()
elif opt = = '4' :
print ( '查询单个学生信息' )
self .__search_student()
elif opt = = '5' :
print ( '5.查询所有学生信息' )
self .__show_all_info()
elif opt = = '6' :
self .__save()
print ( '欢迎下次使用本系统' )
break
else :
print ( '输入有误,请重新输入' )
continue
input ( '........回车键继续操作........' )
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_50216270/article/details/112914099