python——代码制作数据表

vim  table.py
1
#!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 def get_length(ts): 4 ls = [] 5 hs = ts['head'] 6 for h in hs: 7 ls.append(len(h)) 8 bs = ts['body'] 9 for b in bs: 10 for i in range(len(ls)): 11 li = len(b[i]) 12 if ls[i] < li: 13 ls[i] = li 14 return ls 15 def out_line(ts): 16 rs = '+' 17 ls = get_length(ts) 18 for l in ls: 19 rs += '-'*(l+2)+'+' 20 rs += ' ' 21 return rs 22 23 def out_head(ts): 24 rs = '|' 25 ls = get_length(ts) 26 hs = ts['head'] 27 for i in range(len(ls)): 28 rs += ' '+hs[i]+' '*(ls[i]-len(hs[i]))+' |' 29 rs += ' ' 30 return rs 31 32 def out_body(ts): 33 rs = '' 34 ls = get_length(ts) 35 bs = ts['body'] 36 for i in bs: 37 r ='|' 38 for j in range(len(ls)): 39 r += ' '+i[j]+' '*(ls[j]-len(i[j]))+' |' 40 rs += r + ' ' 41 return rs 42 def out_table(ts): 43 rs = out_line(ts) 44 rs += out_head(ts) 45 rs += out_line(ts) 46 rs += out_body(ts) 47 rs += out_line(ts) 48 return rs 49 if __name__ == '__main__': 50 T = { 51 'head':[ 'User','Host', 'Password', 'tip'], 52 'body':[ 53 ['root','localhost', 'abc', ''], 54 ['andy','127.0.0.1', '1234567890', ''], 55 ['tim', '111.67.192.108', '', ''], 56 ] 57 } 58 print(out_table(T),end='')


执行结果:
+------+----------------+------------+-----+
| User | Host           | Password   | tip |
+------+----------------+------------+-----+
| root | localhost      | abc        |     |
| andy | 127.0.0.1      | 1234567890 |     |
| tim  | 111.67.192.108 |            |     |
+------+----------------+------------+-----+


调用上边的表模块,制作属于自己的数据表
vim biao.py
1
#!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 import table 4 5 ts = { 6 'head': ['.jpg', '.png', '.gif'], 7 'body': [ 8 ['abc.jpg', 'xyz.png', 'xxx.gif'], 9 ['abc.jpg', 'xyz.png', 'xxx.gif'], 10 ['abc.jpg', 'xyz.png', 'xxx.gif'], 11 ] 12 } 13 14 rs = table.out_table(ts) 15 print(rs)

执行结果:
+---------+---------+---------+
| .jpg    | .png    | .gif    |
+---------+---------+---------+
| abc.jpg | xyz.png | xxx.gif |
| abc.jpg | xyz.png | xxx.gif |
| abc.jpg | xyz.png | xxx.gif |
+---------+---------+---------+
原文地址:https://www.cnblogs.com/Leonardo-li/p/9096315.html