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

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

10ab497df86612af3040462a8d50773c.jpg-wh_651x-s_3254246395.jpg

第一种:使用 format

先来看几个小 demo

左对齐

>>>"{:<10}".format("a")

'a '

>>>

右对齐

>>>"{:>10}".format("a")

' a'

>>>

居中

>>>"{:^10}".format("a")

' a '

>>>

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

>>>"{:10}".format("a")

'a '

>>>

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

>>>forxinrange(1, 11):

... print('{:2d} {:3d} {:4d}'.format(x, x*x, x*x*x))

...

1 1 1

2 4 8

3 9 27

4 16 64

5 25 125

6 36 216

7 49 343

8 64 512

9 81 729

10 100 1000

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

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

>>>forxinrange(1, 11):

... print('{:02d} {:03d} {:04d}'.format(x, x*x, x*x*x))

...

01 001 0001

02 004 0008

03 009 0027

04 016 0064

05 025 0125

06 036 0216

07 049 0343

08 064 0512

09 081 0729

10 100 1000

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

>>>"a".ljust(10)

'a '

>>>

右对齐

>>>"a".rjust(10)

' a'

>>>

居中

>>>"a".center(10)

' a '

>>>

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

>>>forxinrange(1, 11):

... print(' '.join([str(x).ljust(2), str(x * x).ljust(3), str(x * x * x).ljust(4)]))

...

1 1 1

2 4 8

3 9 27

4 16 64

5 25 125

6 36 216

7 49 343

8 64 512

9 81 729

10 100 1000

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

>>>forxinrange(1, 11):

... print(' '.join([str(x).rjust(2,"0"), str(x*x).rjust(3,"0"), str(x*x*x).rjust(4,"0")]))

...

01 001 0001

02 004 0008

03 009 0027

04 016 0064

05 025 0125

06 036 0216

07 049 0343

08 064 0512

09 081 0729

10 100 1000

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

文末福利

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

f8790e44f2c502112b36ecb1b9dfd043.jpg-wh_600x-s_1460828572.jpg

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

9edb8b67d053f824d8995dfeaf009d21.jpg-wh_600x-s_574044556.jpg

【编辑推荐】

【责任编辑:华轩 TEL:(010)68476606】

点赞 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值