使用 Python 打印漂亮的表格,这两项基本功你可会?

开发 后端
今天给大家介绍如何在打印字符串时,规则对齐的两种方法,帮助大家在 shell 界面下输出漂亮的表格。

 今天给大家介绍如何在打印字符串时,规则对齐的两种方法,帮助大家在 shell 界面下输出漂亮的表格。

第一种:使用 format

先来看几个小 demo

左对齐

 

  1. >>> "{:<10}".format("a"
  2. 'a         ' 
  3. >>>  

右对齐

 

  1. >>> "{:>10}".format("a"
  2. '         a' 
  3. >>>  

居中

 

  1. >>> "{:^10}".format("a"
  2. '    a     ' 
  3. >>>  

当你不指定 < 、>、^ 时,默认就是左对齐

 

  1. >>> "{:10}".format("a"
  2. 'a         ' 
  3. >>>  

有了上面的铺垫,写一个整齐的 1-10 的平方、立方表就很容易了。

 

  1. >>> for x in range(1, 11): 
  2. ...        print('{:2d} {:3d} {:4d}'.format(x, x*x, x*x*x)) 
  3. ... 
  4.  1   1    1 
  5.  2   4    8 
  6.  3   9   27 
  7.  4  16   64 
  8.  5  25  125 
  9.  6  36  216 
  10.  7  49  343 
  11.  8  64  512 
  12.  9  81  729 
  13. 10 100 1000 

对齐的思想其实就是在不足的位自动给你补上空格。

如果不想使用空格,可以指定你想要的字符进行填充,比如下面我用 0 来补全。

 

  1. >>> for x in range(1, 11): 
  2. ...     print('{:02d} {:03d} {:04d}'.format(x, x*x, x*x*x)) 
  3. ...  
  4. 01 001 0001 
  5. 02 004 0008 
  6. 03 009 0027 
  7. 04 016 0064 
  8. 05 025 0125 
  9. 06 036 0216 
  10. 07 049 0343 
  11. 08 064 0512 
  12. 09 081 0729 
  13. 10 100 1000 

第二种:使用 ljust, rjust左对齐

 

  1. >>> "a".ljust(10) 
  2. 'a         ' 
  3. >>>  

右对齐

 

  1. >>> "a".rjust(10) 
  2. '         a' 
  3. >>>  

居中

 

  1. >>> "a".center(10) 
  2. '    a     ' 
  3. >>>  

同样写一个整齐的 1-10 的平方、立方表

 

  1. >>> for x in range(1, 11): 
  2. ...     print(' '.join([str(x).ljust(2), str(x * x).ljust(3), str(x * x * x).ljust(4)])) 
  3. ...  
  4. 1  1   1    
  5. 2  4   8    
  6. 3  9   27   
  7. 4  16  64   
  8. 5  25  125  
  9. 6  36  216  
  10. 7  49  343  
  11. 8  64  512  
  12. 9  81  729  
  13. 10 100 1000 

如果不想使用空格,而改用 0 来补齐呢?可以这样

 

  1. >>> for x in range(1, 11): 
  2. ...     print(' '.join([str(x).rjust(2, "0"), str(x*x).rjust(3, "0"), str(x*x*x).rjust(4, "0")])) 
  3. ...  
  4. 01 001 0001 
  5. 02 004 0008 
  6. 03 009 0027 
  7. 04 016 0064 
  8. 05 025 0125 
  9. 06 036 0216 
  10. 07 049 0343 
  11. 08 064 0512 
  12. 09 081 0729 
  13. 10 100 1000 

以上就是今天的分享,很多漂亮的表格打印模块都是基于以上内置函数实现的,掌握了这两个,以后都可以自己实现啦~~希望本文对你能有帮助

文末福利

明哥整理了 21 张 Python 代码速查表,每一张都是国外的大师总结的,非常实用 ~

 

还有 2 张高清的 PyCharm 快捷键一览图,一张 Windows ,一张 Mac,放在桌面上,需要的时候打开一查,非常方便。。

 

责任编辑:华轩 来源: Python编程时光
相关推荐

2010-09-26 08:56:10

Oracle

2010-05-17 17:00:25

MySQL两项性能

2014-11-20 14:39:12

网络传输

2022-01-24 08:11:53

金融人工智能大数据

2018-08-01 16:12:54

程序员基本技能

2009-10-10 16:57:33

布线工艺要求

2020-12-07 10:38:13

Python开发语言

2021-08-31 23:12:29

电脑软件设置

2015-01-15 09:21:24

TCP窗口

2011-03-01 14:08:51

Fedora 15

2021-10-06 17:18:46

微软Windows 11Windows

2010-06-23 09:56:30

亚马逊

2017-04-12 10:40:34

公有云

2020-11-06 09:05:18

前端web开发

2022-03-31 15:17:04

JavaSocketServlet容器

2017-02-27 21:30:29

数据中心光纤电缆

2023-03-02 08:47:31

IT预算热点

2009-12-11 10:30:27

APC

2013-09-25 09:52:10

HTC诺基亚移动专利

2009-06-03 14:42:28

APC
点赞
收藏

51CTO技术栈公众号