python format格式化、填充、对齐、数字格式化

forma格式化的用法

format函数可以接受不限个参数,位置可以不按顺序。
基本语法是通过{ }和:来代替c语言的%。

在新版本的python中,可以在字符串前添加f代替.format()函数做格式化,形式更为简洁。

 

占位符

{0},{1}代表的占位符,数字占位符要注意顺序。

 

填充与对齐

"^"代表居中

"<"代表左对齐

">"代表右对齐

如:

>>> "{:*>8}".format("245")
'*****245'
  • 冒号后面带的需要填充的字符,"{:*>8}".代表字符串总共是8位,填充星号,245右对齐。
  • 冒号后面若不跟字符,默认填充空格

 

数字格式化

' {:>10s}' 字符s
' {:>10d}' 整数d
' {:>10f}' 浮点数f

>>> a="我是{0},我的存款有{1:.2f}"
>>> a.format("煮雨",3888.4123654)
'我是煮雨,我的存款有3888.41'
  • :.2f表示保存2位浮点数
  • Python中还有很多数字格式化的表达形式,如下表所示:

 

填充0的方法

>>> "{:0>10d}".format(3)
'0000000003'
  • 3右对齐,10位数,其余位补充0。
  • 这些不用死记硬背,用到的时候查一下,用多了就记住了
数字 格式 输出 描述
3.1415926 {:.2f} 3.14 保留小数点后两位
3.1415926 {:+.2f} +3.14 带符号保留小数点后两位
2.71828 {:.0f} 3 不带小数
5 {:0>2d} 05 数字补零(填充左边,宽度为2)
10 {:x<4d} 10xx 数字补x(填充右边, 宽度为4)
100000 {:,} 100,000 以逗号分隔的数字格式
0.25 {:.2%} 25.00% 百分比格式
100000 {:.2e} 1.00e+05 指数记法
13 {:10d} '        13' 右对齐(默认宽度为10)
13 {:<10d} '13        ' 左对齐(宽度为10)
13 {:^10d} '    13    ' 中间对齐(宽度为10)
posted @ 2022-06-30 16:01  IllidanStormrage  阅读(2197)  评论(0编辑  收藏  举报