一·字符串的格式化与排版
1.字符串排版函数(居中,左对齐填充与右对齐填充)
>>> str = 'lujx1024'
>>> str.center(15) # 格式化字符串为15位,居中对齐,前后默认使用空格填充
' lujx1024 '
>>> str.ljust(15,"#") # 格式化字符串为15位,向左对齐,右侧不足处使用#填充
'lujx1024#######'
>>> str.rjust(15,"@") # 格式化字符串为15位,向右对齐,左侧不足处使用@填充
'@@@@@@@lujx1024'
2.字符串格式化方法 format() 的基本使用
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的
功能。
基本语法是通过 {} 和 : 来代替以前的 % 。
format 函数可以接受不限个参数,位置可以不按顺序。
我们可以通过{索引}/{参数名},直接映射参数值,实现对字符串的格式化
## 使用索引映射参数值
>>> str_pattern = "名字是: {0},年龄是: {1}" # 按照索引传入参数
>>> str_pattern.format("John",18)
'名字是: John,年龄是: 18'
>>> str_pattern = "名字是: {0},年龄是: {1}, {0} 已经成年" # 按照索引传入参数
>>> str_pattern.format("John",18)
'名字是: John,年龄是: 18, John 已经成年'
# 按照参数名映射参数值
>>> str_pattern = "名字是: {name},年龄是: {age}"
>>> str_pattern.format(name = "john",age = 18)
'名字是: john,年龄是: 18'
3.字符串的format填充与对齐
填充常跟对齐一起使用
^、<、>分别是居中、左对齐、右对齐,后面带宽度
:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
>>> "{:*>8}".format("12345")
'***12345'
二·数字的格式化与排版
浮点数通过 f,整数通过 d 进行需要的格式化
>>> a = "我是{0},我的存款有{1:.2f}"
>>> a.format("John",3888.234342)
'我是John,我的存款有3888.23'
其他格式,参考表格
数字 | 格式 | 输出 | 描述 |
3.1415926 | {:.2f} | 3.14 | 保留小数点后两位 |
3.1415926 | {:+.2f} | 3.14 | 带符号保留小数点后两位 |
2.71828 | {:.0f} | 3 | 不带小数 |
5 | {:0>2d} | 05 | 数字补零 (填充左边, 宽度为 2) |
5 | {:x<4d} | 5xxx | 数字补 x (填充右边, 宽度为 4) |
10 | {:x<4d} | 10xx | 数字补 x (填充右边, 宽度为 4) |
1000000 | {:,} | 1,000,000 | 以逗号分隔的数字格式 |
0.25 | {:.2%} | 25.00% | 百分比格式 |
1000000000 | {:.2e} | 1.00E+09 | 指数记法 |
13 | {:10d} | 13 | 右对齐 (默认, 宽度为 10) |
13 | {:<10d} | 13 | 左对齐 (宽度为 10) |
13 | {:^10d} | 13 | 中间对齐 (宽度为 10) |
版权声明:本文为LJX_ahut原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。