使用os.system('cls')指令时屏幕没有被清屏只是在输出语句处出现一个0.求问该如何解决?
# 好友管理系统2.0
"""
*******************************
欢迎使用【学生管理系统】
1.显示所有学生信息
2.新建学生信息
3.查询学生信息
4.修改学生信息
5.删除学生信息
0.退出系统
*******************************
"""
import os
# 默认学生数据
student_data = [
{
'id': 1111111111,
'name': '小明',
'sex': '男',
'birthday': '20001011'
},
{
'id': 2222222222,
'name': '小红',
'sex': '女',
'birthday': '20001011'
},
{
'id': 3333333333,
'name': '小刚',
'sex': '男',
'birthday': '20001011'
},
{
'id': 4444444444,
'name': '小芳',
'sex': '女',
'birthday': '20001011'
}
]
# 学生对象初始化
class Student:
def __init__(self, id, name, sex, birthday):
self.id = id
self.name = name
self.sex = sex
self.birthday = birthday
# 系统对象
class System:
def __init__(self, name):
self.name = name
self.data = []
# 美化输出打印
def beauty_print(self, data_list):
print(os.system('cls'))
for index, student in enumerate(data_list):
print(f'序号:{index}', end='\t')
print(f'学号:{student.id:8}', end='\t')
print(f'姓名:{student.name:4}', end='\t')
print(f'性别:{student.sex:2}', end='\t')
print(f'生日:{student.birthday:6}')
# 加载数据
def load_data(self):
for item in student_data:
student = Student(item['id'], item['name'], item['sex'], item['birthday'])
self.data.append(student)
# 启动系统
def start(self):
# 系统启动之初加载数据
self.load_data()
while True:
self.show_menu()
op = input('选择操作:')
if op == '1':
self.show_all_student()
elif op == '2':
self.create_student()
elif op == '3':
self.find_student()
elif op == '4':
self.modify_student()
elif op == '5':
self.remove_student()
elif op == '0':
print('退出程序')
break
else:
print('请输入正常的操作')
# 输入用户名
def input_name(self):
while True:
name = input('请输入姓名:').strip()
if name:
return name
else:
continue
# 选择性别
def choose_sex(self):
sex = input('选择性别:(1)男 (2)女').strip()
if sex == '1':
return '男'
elif sex == '2':
return '女'
else:
return '保密'
# 根据名字查找学生
def find_student_by_name(self):
name = self.input_name()
find_list = []
for student in self.data:
if name in student.name:
find_list.append(student)
if find_list:
return find_list
else:
print('未查询到该学生')
# 显示菜单
def show_menu(self):
print(f"""
*******************************
欢迎使用【{self.name}】
1.显示所有学生信息
2.新建学生信息
3.查询学生信息
4.修改学生信息
5.删除学生信息
0.退出系统
*******************************
""")
# 1、显示学生列表
def show_all_student(self):
self.beauty_print(self.data)
# 2、新建学生信息
def create_student(self):
id = input("请输入学号:")
name = self.input_name()
sex = self.choose_sex()
birthday = input('请输入生日:')
student = Student(id, name, sex, birthday)
self.data.append(student)
# 3、查询学生信息
def find_student(self):
find_list =self.find_student_by_name()
self.beauty_print(find_list)
# 4、修改学生信息
def modify_student(self):
find_list = self.find_student_by_name()
if find_list:
self.beauty_print(find_list)
index = int(input('选择修改的序号:'))
student = find_list[index]
print('当前修改的是:')
self.beauty_print([student])
id = input('请输入学号:')
name = input('请输入姓名:').strip()
sex = self.choose_sex()
birthday = input('请输入生日')
if name :
student.name = name
student.sex = sex
student.birthday = birthday
# 5、删除学生信息:
def remove_student(self):
find_list = self.find_student_by_name()
if find_list:
self.beauty_print(find_list)
index = int(input('选择删除的序号:'))
print('当前要删除的是:')
student = find_list[index]
self.beauty_print([student])
self.data.remove(student)
if __name__ == '__main__':
student_sys = System('学生管理系统')
student_sys.start()