python 美化输出信息的实例

时间:2022-07-05 14:51:44

如下所示:

python" id="highlighter_164814">
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# -*- coding: utf-8 -*-
# @author: xiaodong
# @date:  just hide
# @last modified by:  xiaodong
# @last modified time: just hide
# try:
#   from colorama import fore, style
# except importerror:
#   class temp:
#     def __getattr__(self, x):
#       return ''
#   fore = style = temp()
 
 
style = {
    'fore': {
        'black': 30, 'red': 31, 'green': 32, 'yellow': 33,
        'blue': 34, 'purple': 35, 'cyan': 36, 'white': 37,
    },
    'back': {
        'black': 40, 'red': 41, 'green': 42, 'yellow': 43,
        'blue': 44, 'purple': 45, 'cyan': 46, 'white': 47,
    },
    'mode': {
        'bold': 1, 'underline': 4, 'blink': 5, 'invert': 7,
    },
    'default': {
        'end': 0,
    }
}
 
 
def use_style(string, mode='', fore='', back=''):
  mode = '%s' % style['mode'][mode] if mode in style['mode'] else ''
  fore = '%s' % style['fore'][fore] if fore in style['fore'] else ''
  back = '%s' % style['back'][back] if back in style['back'] else ''
  style = ';'.join([s for s in [mode, fore, back] if s])
  style = '\033[%sm' % style if style else ''
  end = '\033[%sm' % style['default']['end'] if style else ''
  return '%s%s%s' % (style, string, end)
 
 
def gentle_show(seq, *, column=4, fontdict=none):
 
  if fontdict is none:
    line_color = 'red'
    font_color = 'blue'
  elif isinstance(fontdict, dict):
    line_color = fontdict.get('line_color', 'red')
    font_color = fontdict.get('font_color', 'green')
 
  seq = list(map(str, seq))
  max_len = len(max(seq, key=len))
 
  for index, ele in enumerate(seq):
    if index % column == 0:
      print(use_style('-' * max_len * column + '-' * (column - 1), fore=line_color))
      print(use_style(ele.center(max_len, ' '), mode='bold', fore=font_color), end='|')
    else:
      if (index - column + 1) % column == 0:
        print(use_style(ele.center(max_len, ' '), mode='bold', fore=font_color))
      else:
        print(use_style(ele.center(max_len, ' '), mode='bold', fore=font_color), end='|')
  print('\n')
 
 
if __name__ == "__main__":
  gentle_show(dir([]), column=6, fontdict={'line_color': 'red', 'font_color': 'green'})
  gentle_show(range(10))

python 美化输出信息的实例

python 美化输出信息的实例

python 美化输出信息的实例

以上这篇python 美化输出信息的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/xiaodongxiexie/article/details/79918158