python输出格式—format方法

format方法

format()功能很强大,它把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替C语言中的‘%’。

位置映射

print("{}{}{}".format('123',456,'789'))
#输出为
#123456789

123对应第一对{ }

456对应第二对{ }

789对应第三对{ }

关键字映射

print("{}{abc}{}".format('123',456,abc='xxx'))
#输出为
#123xxx456

abc可以被放置到任何一个{ }里面

元素访问

只有一组数据

print('{0[0]}{0[1]}{0[2]}'.format(('aaa','bbb','ccc')))
#输出如下
#aaabbbccc

拥有多组数据

print("{0[2]}{1[1]}".format(('111','222','333'),('444','555','666')))
#输出为
#333555

每个小括号是一个数组,数组内的元素靠逗号隔开。

print("{0[0]}-{1[1]}-{2[2]}".format('123','456','789'))
#输出如下
#1-5-9
也可把每一个引号括住的部分看作一个数组

其实两种都是一样的道理

但是,这些在我看来都不是format方法的最好的地方

控制数字输出时左中右补全

这个比较适用于元素访问和关键字映射,在元素(关键字)后面加上冒号

元素(关键字)+ :+左中右补全格式+精度(包括字符)

尖尖向左

print("{0[0]:<10}{0[1]}{0[2]}".format(('123')))
#输出如下
#1         23
print("{}{abc:<10}{}".format('123',456,abc='xxx'))
#输出如下
#123xxx       456

尖尖向上

print("{0[0]:^10}{0[1]}{0[2]}".format(('123')))
#输出如下
#    1     23
print("{}{abc:^10}{}".format('123',456,abc='xxx'))
#输出如下
#123   xxx    456

尖尖向右

print("{0[0]:>10}{0[1]}{0[2]}".format(('123')))
#输出如下
#         123
print("{}{abc:>10}{}".format('123',456,abc='xxx'))
#输出如下
#123       xxx456

补全

*使用星星,搭配左中右,星星放在左中右的前面

print("{0[0]:*<10}{0[1]}{0[2]}".format(('123')))
#输出如下
#1*********23
print("{}{abc:*<10}{}".format('123',456,abc='xxx'))
#输出如下
#123xxx*******456

精度

若是浮点数的话就需要在数据末尾加上f,否则会报错

精度在和补全一起用的时候优先考虑补全而忽略精度

替代format方法

写成如下格式

num=3.1415
print(f'num:.3   is *{num:10.3}')
print(f'num:10.3 is *{num:10.3f}')

 总共输出10个字符的长度,在结尾加上f, 小数点后的数字就表示精度,不加f 就代表总共输出的个数。

居中,居左,居右的方式同上

结尾重申,一切关于某数格式的操作都在大括号内进行!

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值