一文全搞定Python.format()的详细用法

一 基本用法

 1.按照槽{ }的顺序依次匹配括号中的值    

s = "{} is a {}".format('张明', 'Boy')

print(s) 

# 张明 is a Boy

 2. 通过索引的方式去匹配参数

s = "{0} is a {1}".format('张明', 'Boy')

print(s) # 张明 is a Boy

注:索引号从零开始,字符串中索引的顺序可以打乱,并不影响匹配。

3.通过参数名来匹配参数

s = "{name} is a {sex}".format(name='张明', sex='Boy')

print(s) # 张明 is a Boy

注:如果参数已经确定,可以直接利用f+ { }进行格式化引用

name = 'Tom'

sex = 'Girl'

# 以f开头表示在字符串中支持大括号内的python表达式

s = f"{name} is a {sex}"

print(s) # Tom is a Boy

4.可以通过索引,参数名来混搭进行混搭匹配

s = "My name is {}, i am {age} year old, She name is {}".format('张明', 'Lily', age=10)

print(s) # My name is 张明, i am 10 year old, She name is Lily

注:在format中, age=10 必须在最后参数的位置;但索引号和默认格式同时使用会报错。

二 格式化输出

#槽的内部格式:
{ <参数序号> : <格式控制标记> }

 格式控制标记用来控制参数显示时的格式:

  格式控制标记包括<填充>、<对齐>、<宽度>、<,>、<.精度>、<类型>6个字段,都是可选的,可以组合使用

1. <填充>、<对齐>、<宽度>

<填充>指宽度内除了参数外的字符采用什么方式表示,默认采用空格。

<对齐>指参数在宽度内输出时的对齐方式,分别使用< 、> 、^ 表示左对齐、右对齐、居中,默认左对齐。

<宽度>指当前槽的设定输出字符的宽度,

如果该槽对应的format()参数长度比<宽度>设定值大,使用参数实际长度。

如果该值的实际位数小于指定宽度,则位数将被默认以空格字符补充。

 

str = "HELLO"
print('{0:*30}end'.format(str))  

# HELLO*************************end
#对齐
str = "HELLO"
print('{:>30}'.format(str))             #右对齐
                         HELLO 

 

#填充
str = "HELLO"
print('{0:*^30}'.format(str))    #居中且使用*填充
************HELLO*************
#参数长度比<宽度>设定值大,使用参数实际长度
str = "HELLO"
print('{:3}'.format(str))   宽度设定为3,但参数HELLO实际长度大于3,使用参数实际长度
HELLO

2.<精度>

精度表示两个含义,由小数点(.)开头:

对于浮点数,精度表示小数部分输出的有效位数

对于字符串,精度表示输出的最大长度

print('{:.2f}'.format(123.4567))
123.46
 
print('{:X^30.2f}'.format(123.4567))
XXXXXXXXXXXX123.46XXXXXXXXXXXX
str = "HELLO"
print('{:.3}'.format(str))
HEL

ps :参考此大佬博客http://t.csdn.cn/FybLj

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值