这是输出的代码,看看是哪有问题吗,怎么输出的数字不对齐
中英文混合字符串的对齐参考
def my_align(_string, _length, _type='L'):
"""
中英文混合字符串对齐函数
my_align(_string, _length[, _type]) -> str
:param _string:[str]需要对齐的字符串
:param _length:[int]对齐长度
:param _type:[str]对齐方式('L':默认,左对齐;'R':右对齐;'C'或其他:居中对齐)
:return:[str]输出_string的对齐结果
"""
_str_len = len(_string) # 原始字符串长度(汉字算1个长度)
for _char in _string: # 判断字符串内汉字的数量,有一个汉字增加一个长度
if _char > '\u00ff': # 判断一个字是否为汉字
_str_len += 1
_space = _length-_str_len # 计算需要填充的空格数
if _type == 'L': # 根据对齐方式分配空格
_left = 0
_right = _space
elif _type == 'R':
_left = _space
_right = 0
else:
_left = _space//2
_right = _space-_left
return ' '*_left + _string + ' '*_right
li = [
[1,"aaa学校",468],
[14,"bbbbbbbb学校",68],
[1888,"第一学校",7667],
]
print(my_align('排名', 10, 'L')+my_align('学校名称', 40, 'L')+my_align('总分', 10, 'L'))
for u in li:
print(my_align(str(u[0]), 10, 'L')+my_align(u[1], 40, 'L')+my_align(str(u[2]), 10, 'L'))
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
你给他存到numpy里面,不就对齐了吗
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!