python输出多行_print等宽多行打印输出

程序员对print函数再熟悉不过了,这个函数实现了向stdout输出信息,程序运行过程,以及调试过程,都大量的使用print函数实现各类信息的输出。

本文介绍一个小技巧,通过在%s增加参数的方式,实现等宽多行打印输出,这会让你的程序在打印层面看起来高级那么一点点。(本文作为用%格式化Python字符串的补充)

我们通过如下这种兼容性最好的方式(%)来拼装字符串:

>>> a = 'www.pynote.net'

>>> 'This is %s' % a

'This is www.pynote.net'

%s可以带参数:

>>> 'This is %20s by maixj.net' % a

'This is www.pynote.net by maixj.net'

>>> 'This is %-20s by maixj.net' % a

'This is www.pynote.net by maixj.net'

就用这种方式来输入等宽字符串:

>>> for i in range(0,100,8):

... print('%10s:' % str(i), 'Yes')

...

0: Yes

8: Yes

16: Yes

24: Yes

32: Yes

40: Yes

48: Yes

56: Yes

64: Yes

72: Yes

80: Yes

88: Yes

96: Yes

>>> for i in range(0,100,8):

... print('%-10s:' % str(i), 'Yes')

...

0 : Yes

8 : Yes

16 : Yes

24 : Yes

32 : Yes

40 : Yes

48 : Yes

56 : Yes

64 : Yes

72 : Yes

80 : Yes

88 : Yes

96 : Yes

看起来是不是很舒服!:)

不过,这个小技巧在有中文的时候,会有点问题。因为一个中文占2个英文字符的位置,如果计算准确的话,这个等宽字符串输出的技巧,还是可以使用的。

>>> '%10s' % '人生123'

' 人生123'

>>> '%12s' % 'abcd123'

' abcd123'

-- EOF --

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值