- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- def is_chinese(uchar):
- """判断一个unicode是否是汉字"""
- if uchar >= u'\\u4e00' and uchar <= u'\\u9fa5':
- return True
- else:
- return False
- def fill_text_to_print_width(text, width):
- stext = str(text)
- utext = stext.decode("utf-8")
- cn_count = 0
- for u in utext:
- if is_chinese(u):
- cn_count += 1
- return " " * (width - cn_count - len(utext)) + stext
- def print_table_line(title_config_pairs):
- fmt = "|".join((["{}"] * len(title_config_pairs)))
- print fmt.format(*map(lambda x:fill_text_to_print_width(x[0], x[1]), title_config_pairs))
- print_table_line((
- ("标题1", 10),
- ("2标题1", 11),
- ("2标11题1", 13),
- ("abc", 5),
- ))
- print_table_line((
- ("好不好", 10),
- ("琰good", 11),
- ("琰go琰", 13),
- ("234", 5),
- ))
- #该片段来自于http://www.codesnippet.cn/detail/1612201411283.html
来源: http://www.codesnippet.cn/detail/1612201411283.html