3分钟学会Python的format
Posted Harris-H
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3分钟学会Python的format相关的知识,希望对你有一定的参考价值。
3分钟学会Python的format
简介
format是用来格式化字符串的一个函数,主要通过花括号来识别替换字段,从而完成字符串的格式化
数字格式化
数字 | 格式 | 输出 | 描述 |
---|---|---|---|
3.1415926 | {:.2f} | 3.14 | 保留小数点后两位 |
3.1415926 | {:+.2f} | +3.14 | 带符号保留小数点后两位 |
-1 | {:+.2f} | -1.00 | 带符号保留小数点后两位 |
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) |
11 | ‘{:b}’.format(11) | 1011 | 二进制 |
11 | ‘{:d}’.format(11) | 11 | 十进制 |
11 | ‘{😮}’.format(11) | 13 | 八进制 |
11 | ‘{:x}’.format(11) | b | 十六进制 |
11 | ‘{:#x}’.format(11) | 0xb | 十六进制 |
11 | ‘{:#X}’.format(11) | 0xB | 十六进制 |
各种用法集合
print("{} {}".format("小明", "小张")) # 花括号内为空 默认按照顺序填充
print("{} {}".format("1", "2", "3")) # 花括号可以少于参数的个数 但多于会报错
print("{0} {1} {0}".format("herio", "harris")) # 参数可以重复填充,可以用下标填充(从0开始)
lst = ['aaa', 'bbb']
print("{names[1]} {names[0]}".format(names=lst)) # 可以用列表赋值为key
dct = {"name": "小张", "age": "20"}
print(" {keys[name]} {keys[age]}".format(keys=dct)) # 字典赋值
class Object: # 类赋值
name = "abc"
age = 19
print("{obj.age} {obj.name} ".format(obj=Object))
# 数字格式化
number = 3.1415726
print("{:.2f}".format(number), "{:+.2f}".format(number), "{:.2f}".format(-number)
, "{:0>5d}".format(123), "{:0<5d}".format(123), "{:.>4d}".format(1)
, "{:.2%}".format(0.76), "{:.0%}".format(0.123), "{:.2e}".format(123.543),
"{:b}".format(7), "{:x}".format(15), "{:#x}".format(123))
"""
3.14 +3.14 -3.14 00123 12300 ...1 76.00% 12% 1.24e+02 111 f 0x7b
"""
fun = "{} is a good boy".format # 作为一个函数使用
print(fun("herio"))
from datetime import datetime
now = datetime.now() # 格式化datetime
print("{:%Y-%m-%d %X}".format(now))
参考文章
以上是关于3分钟学会Python的format的主要内容,如果未能解决你的问题,请参考以下文章