【Python基础语法】最实用的.format()字符串格式化总结

Python基础语法 format字符串格式化

  • 简介 Intro
  • 1 format 的4种基础用法
    • 1.1 缩写+直接填充
    • 1.2 按顺序填充
    • 1.3 按照编号填充(次序可变)
    • 1.4 关键字写法(key-value)
  • 2 format 字符串格式化方法
    • 2.1 数字:四舍五入/ 百分比/ 千分符
    • 2.2 数字:正负号显示
    • 2.3 数字:科学计数法
    • 2.4 数字:填充
    • 2.5 字符串:左/中/右 对齐
    • 2.6 字符串:填充
    • 2.7 字符串:Unicode/ 进制 转换


整理博客不易,如需转载请注明出处 !

手动反爬:【Python办公自动化】文件管理

https://blog.csdn.net/lyun911/article/details/114435268


简介 Intro

.format() 是字符串格式化最常用的方法,经过处理后的内容,输出的格式为 str

.format() 在使用时,可以将其想为是一个“填空题”,format函数直接将对应的内容填入 {}花括号中。


1 format 的4种基础用法

1.1 缩写+直接填充

var1 = '【变量1】'
var2 = '【变量2】'

print(f'text{var1}text{var2}text{var1}text')# 这个是format函数的缩写写法

# 输出:text【变量1】text【变量2】text【变量1】text

1.2 按顺序填充

var1 = '【变量1】'
var2 = '【变量2】'

print('text{}text{}text{}text'.format(var1, var2, var1))
# 三个花括号分别填写进var1,var2,var1

# 输出:text【变量1】text【变量2】text【变量1】text

1.3 按照编号填充(次序可变)

var1 = '【变量1】'
var2 = '【变量2】'

print('text{0}text{1}text{0}text'.format(var1, var2))
# var1是0号位,var2是1号位,花括号里的0和1指代var1和var2
# 以上三种写法是等价的

# 输出:text【变量1】text【变量2】text【变量1】text

1.4 关键字写法(key-value)

string = 'text{var1}text{var2}text{var1}text'.format(var1='【变量1】',b='【变量2】')
print(string)

# 输出:text【变量1】text【变量2】text【变量1】text

2 format 字符串格式化方法

2.1 数字:四舍五入/ 百分比/ 千分符

# 当值为整数时和'd'相同,值为浮点数时和'g'相同
# g:保证6位有效数字的前提下用小数表示,否则用科学计数法
print('{:n}'.format(12.1212))    # 12.1212

# 四舍五入
print('{:f}'.format(12))         # 12.000000
print('{:.2f}'.format(12.1212))  # 23.89

# 百分比 + 显示位数
print('{:%}'.format(12))         # 1200.000000%
print('{:.2%}'.format(12))       # 1200.00%

# 千分符
print('{:,.2f}'.format(12000))   # 12,000.00

2.2 数字:正负号显示

print("{:f} & {:f}".format(12.12, -12.12))    # 12.120000 & -12.120000
print("{:+f} & {:+f}".format(12.12, -12.12))  # +12.120000 & -12.120000
print("{:-f} & {:-f}".format(12.12, -12.12))  # 12.120000 & -12.120000

2.3 数字:科学计数法

# int -> 科学计数法
print('{:e}'.format(12.121212))   # 1.212121e+01
print('{:g}'.format(12.121212))   # 12.1212
print('{:g}'.format(12.121212))   # 12.1212
print('{:.3g}'.format(12.121212)) # 12.1

2.4 数字:填充

# '=' 只能进行数字填充!填充的内容包括 '.'
print("|{:0=10}|".format(12.1212))      # 填充10位 + 右对齐(默认)
print("|{:0<10}|".format(12.1212))      # 填充10位 + 左对齐
print("|{:0^10}|".format(12.1212))      # 填充10位 + 居中对齐
print("|{:>10.2f}|".format(12.1212))    # 填充10位 + 四舍五入
print("|{:#>10.2f}|".format(12.1212))   # 填充特殊符号 + 四舍五入
# |00012.1212|
# |12.1212000|
# |012.121200|
# |     12.12|
# |#####12.12|

2.5 字符串:左/中/右 对齐

print("|{:10}|".format('var'))      # 左对齐(默认)
print("|{:10s}|".format('var'))     # 左对齐
# |var       |
# |var       |

print("|{:<10}|".format('var'))     # 左对齐
print("|{:^10}|".format('var'))     # 居中对齐
print("|{:>10}|".format('var'))     # 右对齐
# |var       |
# |   var    |
# |       var|

2.6 字符串:填充

print("|{:->10}|".format('var'))    # 填充
print("|{:*>10}|".format('var'))    # 填充
print("|{:+>10}|".format('var'))    # 填充
print("|{:^>10}|".format('var'))    # 填充
# |-------var|
# |*******var|
# |+++++++var|
# |^^^^^^^var|

2.7 字符串:Unicode/ 进制 转换

# int -> unicode
print('{:c}'.format(28888))  # 烘
# int -> binary 二进制
print('{:b}'.format(12))     # 101
# int -> octonary 八进制
print('{:o}'.format(12))     # 27
# int -> decimalism 十进制
print('{:d}'.format(12))     # 20
# int -> hexadecimal 十六进制
print('{:x}'.format(12))     # 17

你可能感兴趣的:(Python基础,python)