1 def print_infos(): 2 print("=" * 30) 3 print("学生管理系统v1.0") 4 print("1.添加学生信息") 5 print("2.删除学生信息") 6 print("3.修改学生信息") 7 print("4.显示学生信息") 8 print("5.保存数据至文件") 9 print("6.退出系统") 10 print("=" * 30) 11 12 13 def add_infos(): 14 print("添加学生信息") 15 dict_1 = {} # 定义一个字典,用于保存每个学生的基本信息 16 name = input("请输入学生姓名:") # 接收学生的姓名 17 sex = input("请输入性别(男/女):") # 接收学生的性别 18 iphone = input("请输入手机号码:") # 接收学生的手机号码 19 dict_1["name"] = name # 字典,利用键来添加值,添加的是一对键值对 20 dict_1["sex"] = sex # 字典,利用键来添加值,添加的是一对键值对 21 dict_1["iphone"] = iphone # 字典,利用键来添加值,添加的是一对键值对 22 student_infos.append(dict_1) # 把字典作为一个元素追回到全局变量的列表中 23 24 25 def del_infos(): 26 print("删除学生信息") 27 num_02 = int(input("请输入要删除的学生序号:")) 28 # print("%s 已被删除" % student_infos[num_02-1]["name"]) 29 # del student_infos[num_02-1] # 直接删除列表中对应下标位置的元素 30 print(student_infos.pop(num_02 - 1)) # pop 删除列表中对应下标位置的元素并把元素的信息抛出 31 32 33 def modify_infos(): 34 print("修改学生信息") 35 # show_infos() 36 num_01 = int(input("请输入要修改的学生序号:")) 37 name = input("请输入新的姓名(回车不修改):") 38 if len(name) != 0: 39 student_infos[num_01 - 1]["name"] = name 40 sex = input("请输入新的性别(回车不修改):") 41 if len(sex) != 0: 42 student_infos[num_01 - 1]["sex"] = sex 43 iphone = input("请输入新的电话号码(回车不修改):") 44 if len(iphone) != 0: 45 student_infos[num_01 - 1]["iphone"] = iphone 46 47 48 def show_infos(): 49 print("显示所有学生信息") 50 print("@" * 30) 51 # print("序号\t姓名\t性别\t手机号码") 52 print("{0:<4}{1:<6}{2:<4}{3:<11}".format("序号", "姓名", "性别", "手机号码")) 53 i = 1 54 for temp in student_infos: 55 # print(i, temp["name"].center(4), temp["sex"].center(4), temp["iphone"].center(6)) 56 print("{0:#<6}{1:#<7}{2:#<4}{3:#<11}".format(i, temp["name"], temp["sex"], temp["iphone"])) 57 i += 1 58 print("@" * 30) 59 return "信息显示完毕" 60 61 def save_date_file(): 62 print("保存数据至文件") 63 global student_infos # 声明当前使用的是全局变量 64 file = open("info.txt", "w") # 以只写模式打开文件 65 file.write(str(student_infos)) # 将列表的内容写到文件中 66 file.close() # 将文件关闭 67 68 def recover(): 69 print("恢复文件的数据至当前操作中") 70 global student_infos # 声明此时使用的是全局变量 71 file = open("info.txt", "r") # 只读模式打开文件 72 content = file.read() # 将文件中的全部内容读出来 73 student_infos = eval(content) # 还原列表原来的样子 74 file.close() 75 76 student_infos = [{"name": "曹操", ‘sex‘: "男", ‘iphone‘: "11232323232 "}, {"name": "刘备", "sex": "男", "iphone": "12345678908"}] # 定义在文件中,函数的外边,全局变量recover() 77 while True: 78 print_infos() 79 num = input("请输入您要选择的操作:") 80 if num == "1": 81 add_infos() 82 elif num == "2": 83 del_infos() 84 elif num == "3": 85 modify_infos() 86 elif num == "4": 87 result = show_infos() 88 print(result) 89 choice = input("还要继续使用学生管理系统吗?") 90 if choice == "y" or choice == "Y": 91 continue 92 else: 93 break 94 elif num == "5": 95 save_date_file() 96 elif num == "6": 97 get = input("请再次确认是否退出? (y/n):") 98 if get == "y" or get == "Y": 99 print("退出系统,本次服务结束。") 100 break # 跳出循环退出系统 101 else: 102 continue 103 else: 104 print("输入错误,请重新输入。") 105 106 """ 107 函数,先定义后调用。 108 函数调用,函数名() 109 a = func 110 a() 111 func() 112 def 函数名 (参数1,参数2,参数n): # 无参数括号不能省略 113 代码块 114 return表达式 115 116 函数的返回值三种情况: 117 1.无return :返回None 118 2.return 一个值 :返回一个值,接收这个值的变量的数据类型就是返回值的类型 119 3.return a,b : 返回一个元组,(a,b) 120 """ 121 # def func(a, b): 122 # c = a + b 123 # return c, a, b 124 # 125 # 126 # result = func("aa", "cc") 127 # print(result) 128 # print(type(result))
原文地址:https://www.cnblogs.com/zh1127487137/p/12552946.html
时间: 2024-10-20 02:32:55