python3----字符串格式化(format)

Posted jonm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3----字符串格式化(format)相关的知识,希望对你有一定的参考价值。

用法:

  它通过{}和:来代替传统%方式

1、使用位置参数

要点:从以下例子可以看出位置参数不受顺序约束,且可以为{},只要format里有相对应的参数值即可,参数索引从0开,传入位置参数列表可用*列表

1 >>> li = [hoho,18]
2 >>> my name is {} ,age {}.format(hoho,18)
3 my name is hoho ,age 18
4 >>> my name is {1} ,age {0}.format(10,hoho)
5 my name is hoho ,age 10
6 >>> my name is {1} ,age {0} {1}.format(10,hoho)
7 my name is hoho ,age 10 hoho
8 >>> my name is {} ,age {}.format(*li)
9 my name is hoho ,age 18

2、使用关键字参数

要点:关键字参数值要对得上,可用字典当关键字参数传入值,字典前加**即可

1 >>> hash = {name:hoho,age:18}
2 >>> my name is {name},age is {age}.format(name=hoho,age=19)
3 my name is hoho,age is 19
4 >>> my name is {name},age is {age}.format(**hash)
5 my name is hoho,age is 18

3、填充与格式化

:[填充字符][对齐方式 <^>][宽度]

1 >>> {0:*>10}.format(10)  ##右对齐
2 ********10
3 >>> {0:*<10}.format(10)  ##左对齐
4 10********
5 >>> {0:*^10}.format(10)  ##居中对齐
6 ****10****

4、精度与进制

 1 >>> {0:.2f}.format(1/3)
 2 0.33
 3 >>> {0:b}.format(10)    #二进制
 4 1010
 5 >>> {0:o}.format(10)     #八进制
 6 12
 7 >>> {0:x}.format(10)     #16进制
 8 a
 9 >>> {:,}.format(12369132698)  #千分位格式化
10 12,369,132,698

5、使用索引

1 >>> li
2 [hoho, 18]
3 >>> name is {0[0]} age is {0[1]}.format(li)
4 name is hoho age is 18

 

以上是关于python3----字符串格式化(format)的主要内容,如果未能解决你的问题,请参考以下文章

Python3 字符串格式化

Python3 字符串格式化

python3 格式化字符串的方法

python3 开发面试题(%s和format的区别)5.31

python3 f-string格式化字符串的高级用法

Python3 字符串格式化