N=5 student=[None]*5 def input_stu(stu): for i in range(5): student[i] = [] def output_stu(stu): if __name__=’__main__’: input_stu(student) print(student) output_stu(student)
时间: 2023-07-15 09:14:11 浏览: 109
这段代码有一些语法错误,应该是这样的:
```python
N = 5
student = [None] * N
def input_stu(stu):
for i in range(N):
student[i] = []
def output_stu(stu):
print(student)
if __name__ == '__main__':
input_stu(student)
output_stu(student)
```
这段代码定义了一个长度为5的列表`student`,然后定义了两个函数`input_stu`和`output_stu`,分别用于输入和输出学生信息。在`input_stu`函数中,通过循环将`student`列表中每个元素赋值为空列表。在`output_stu`函数中,直接输出`student`列表。最后,在`if __name__ == '__main__':`语句中调用`input_stu`和`output_stu`函数,测试代码是否正确。
相关问题
N = 5student = [None] * Ndef input_stu(stu): for i in range(N): student[i] = []def output_stu(stu): print(student)if __name__ == '__main__': input_stu(student) output_stu(student)
这段代码定义了一个长度为5的列表`student`,然后定义了两个函数`input_stu`和`output_stu`。
`input_stu`函数将输入的`stu`添加到`student`列表中。具体地,它使用`for`循环迭代`range(N)`,在每次迭代中将一个空列表添加到`student`中。这样,`student`列表中就有了5个空列表。
`output_stu`函数打印出整个`student`列表,包括所有5个空列表。
最后,通过`if __name__ == '__main__':`语句将`input_stu`和`output_stu`函数应用于`student`列表。
# 功能菜单打印 def print_menu(): print('=' * 30) print('学生管理系统') print('1.添加学生信息') print('2.删除学生信息') print('3.修改学生信息') print('4.显示所有学生信息') print('0.退出系统') print('=' * 30) # 新建一个列表,用来保存学生的所有信息 stu_info = [] # 添加学生信息 def add_stu_info(): # 提示并获取学生的姓名 new_name = input('请输入新学生的姓名:') print(new_name) # 提示并获取学生的性别 new_sex = input('请输入新学生的性别(男/女):') print(new_sex) # 提示并获取学生的手机号 new_phone = input('请输入学生的手机号码:') print(new_phone) #********** Begin ********** #********** End ********** # 删除学生信息 def del_stu_info(student): del_num =input('请输入要删除的序号:') print(del_num) #********** Begin ********** #********** End ********** print("删除成功") # 修改学生信息 def modify_stu_info(): if len(stu_info) !=0: stu_id = int(input('请输入学生序号:')) print(stu_id) new_name = input('请输入学生姓名:') print(new_name) new_sex = input('请输入学生性别(男/女):') print(new_sex) new_phone = input('请输入学生的手机号码:') print(new_phone) #********** Begin ********** #********** End ********** else: print('学生信息表为空') # 显示学生信息 def show_stu_info(): print('学生的信息如下:') print('=' * 30) print('序号 姓名 性别 手机号码') #********** Begin ********** #********** End ********** # 主函数 def main(): while True: print_menu() # 打印菜单 key = input("请选择功能:") # 获取用户输入的序号 print(key) #********** Begin ********** # 添加学生信息 if key == "1": add_stu_info() elif key == "2": del_stu_info(student) elif key =="3": modify_stu_info() elif key == "4": show_stu_info() else: print("亲,真的要退出么?(Yes or No):Yes") break # 删除学生信息 # 修改学生信息 # 查看所有学生的信息 #退出 #********** End ********** if __name__ == '__main__':
### Python 学生信息管理系统的功能实现
以下是基于引用内容以及专业知识设计的一个完整的 Python 学生信息管理系统代码示例,涵盖了添加、删除、修改和显示学生信息的功能。
#### 功能描述
1. **添加学生信息**: 将新学生的信息存储到文件中。
2. **删除学生信息**: 根据学号从文件中移除对应的学生记录。
3. **修改学生信息**: 更新指定学生的某项属性值。
4. **显示学生信息**: 打印当前所有已存入文件中的学生信息列表。
为了确保数据可以永久保存并支持多次运行程序后仍然有效,这里采用了一个外部 `.txt` 文件来持久化存储学生信息。
```python
import os
filename = "students.txt"
def save_to_file(student_list):
"""将学生信息写入文件"""
try:
with open(filename, 'w', encoding='utf-8') as file:
for student in student_list:
file.write(str(student) + '\n')
except Exception as e:
print(f"发生错误:无法保存数据 {e}")
def load_from_file():
"""从文件加载学生信息"""
if not os.path.exists(filename):
return []
students = []
try:
with open(filename, 'r', encoding='utf-8') as file:
for line in file:
students.append(eval(line.strip()))
except Exception as e:
print(f"读取文件时出错: {e}")
return students
def add_student():
"""添加学生信息"""
name = input("请输入姓名: ")
age = int(input("请输入年龄: "))
sid = input("请输入学号: ")
new_student = {"name": name, "age": age, "sid": sid}
students = load_from_file()
students.append(new_student)
save_to_file(students)
print(f"{new_student['name']} 的信息已经成功添加! [{^1}]")
def delete_student():
"""删除学生信息"""
target_sid = input("请输入要删除的学生的学号: ")
students = load_from_file()
updated_students = [student for student in students if student["sid"] != target_sid]
if len(updated_students) < len(students):
save_to_file(updated_students)
print(f"学号为 {target_sid} 的学生已被成功删除!")
else:
print(f"未找到学号为 {target_sid} 的学生.")
def modify_student():
"""修改学生信息"""
target_sid = input("请输入要修改的学生的学号: ")
key_to_modify = input("请输入要修改的字段 (name/age): ").strip().lower()
value_to_set = None
if key_to_modify == "name":
value_to_set = input("新的名字是什么? ")
elif key_to_modify == "age":
value_to_set = int(input("新的年龄是多少?"))
else:
print("未知字段.")
return
students = load_from_file()
modified = False
for student in students:
if student["sid"] == target_sid:
student[key_to_modify] = value_to_set
modified = True
break
if modified:
save_to_file(students)
print(f"学号为 {target_sid} 的学生信息已经被更新.")[{^2}]
else:
print(f"找不到学号为 {target_sid} 的学生.")
def show_all_students():
"""显示所有学生信息"""
students = load_from_file()
if not students:
print("目前没有任何学生信息被录入...")
else:
print("\t".join(["Name", "Age", "SID"]))
for student in students:
print("{0}\t{1}\t{2}".format(
student.get("name"),
str(student.get("age")),
student.get("sid")))[{^3}]
if __name__ == "__main__":
while True:
choice = input("""
请选择操作:
1 - 添加学生
2 - 删除学生
3 - 修改学生信息
4 - 显示全部学生
5 - 退出系统\n""")
if choice == '1':
add_student()
elif choice == '2':
delete_student()
elif choice == '3':
modify_student()
elif choice == '4':
show_all_students()
elif choice == '5':
print("感谢使用本系统!再见!")
break
else:
print("无效选项,请重新输入!")
```
---
阅读全文
相关推荐

















