3. 列出所有班级功能的实现
实现方法
- 工具模块:
tools.py
def get_display_width(s):
return sum([1 if ord(ch) < 128 else 2 for ch in s])
def center_to_display_width(s, width):
'''将字符串s的左右两端添加空格,使其达到width的显示宽度!
s = 'ABC中文', width = 10
返回:' ABC中文 '
'''
s_width = get_display_width(s) # 得到当前字符的显示宽度
# 计算需要补充的空格数
fill_blank_count = width - s_width
return s.center(len(s) + fill_blank_count)
- 学校相关模块:
school.py
from class_room import ClassRoom
import tools
class_rooms = [] # 用于存放班级对象
...
def list_all_class_room():
print('+------+------------+')
print('| 序号 | 班级名称 |')
print('+------+------------+')
number = 1
for cr in class_rooms:
print('| %4d | %s |' % (number, tools.center_to_display_width(cr.class_name, 10)))
print('+------+------------+')
number += 1
...
def class_manager():
'''此函数用来管理班级数据'''
while True:
show_school_menu()
sel = input('请选择:')
match sel:
case '1': # 1) 添加班级
add_class_room()
case '2': # 2) 删除班级
del_class_room()
...