python 格式化字符串实现对齐输出

        这也是我在做课设的时候遇到的一个小问题,当时需要实现对齐输出,不然显得很杂乱。不过当时并没有发现这个功能(我学艺不精,我三脚猫 哈哈),所以用了很弱智的方法:for循环【当输出的字符串小于特定长度的时候,给他后面补空格】。这个方法虽然可行,但是实在是mdzz。所以,我在这里记录一下最近发现的一个新方法:

        首先,先来看一下Python格式化输出的语句:

str1 = 'a'
str2 = 'b'
print(f"{str1} and {str2}")  #输出 a and b

当时课设里是需要输出每天的支出情况,直接输出大概是这样的:

         很明显,不对齐看着很难受,所以就要用到格式化字符串来控制它的输出的最小长度。

方法是:在格式化字符串语句的大括号内加上一个 冒号“:”, 后面跟上希望输出的最小长度即可。

这样输出的时候,(注意这里针对大括号里的是字符串)当字符串本身长度小于设置的最小长度时,就会通过在右边自动添加空格来补齐长度。

如果格式化的大括号中的内容是数字,直接在后面加冒号和表示最小长度的数字的时候,是在输出的数字左边补空格补齐长度。我们也可以在表示最小长度的数字前面加一个0,表示用0来补齐长度,此时的0也是补在左边的。

不理解的话看下面这个例子:

arr1 = ['1月1日','2月12日','11月11日','12月12日']
arr2 = [13,32,11234,1234]
for i in range(0,4):
    print(f'{arr1[i]:10}消费  {arr2[i]:5}元') #字符串右边加空格补齐,数字左边加空格补齐

print('-----------分割线---------------')

for i in range(0,4):
    print(f'{arr1[i]:10}消费  {arr2[i]:05}元')  #在数字左边加0补齐

输出:

 这样就好卡hin多了^_^

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三头猪等于一头大猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值