格式化
Python的f-string(格式化字符串)提供了丰富的格式化选项,可以用于各种数据类型。以下是一些常见的格式化选项:
整数格式化: * :d 或 :n:十进制整数。 * :b:二进制整数。 * :o:八进制整数。 * :x:小写十六进制整数。 * :X:大写十六进制整数。
number = 42
print(f"{number:d}") # 输出: 42
print(f"{number:b}") # 输出: 101010
print(f"{number:o}") # 输出: 52
print(f"{number:x}") # 输出: 2a
print(f"{number:X}") # 输出: 2A
浮点数格式化: * :.2f:保留两位小数的浮点数。 * :e 或 :E:科学计数法(小写或大写)。 * :g 或 :G:通用格式(自动选择合适的表示法)。
number = 3.14159
print(f"{number:.2f}") # 输出: 3.14
print(f"{number:e}") # 输出: 3.141590e+00
print(f"{number:E}") # 输出: 3.141590E+00
print(f"{number:g}") # 输出: 3.14159
字符串格式化: * :<10:左对齐,总宽度为10。 * :>10:右对齐,总宽度为10。 * :^10:居中对齐,总宽度为10。 * :.10:截取前10个字符。
text = "Hello"
print(f"{text:<10}") # 输出: Hello
print(f"{text:>10}") # 输出: Hello
print(f"{text:0>10}") # 输出: 00000Hello
print(f"{text:*<10}") # 输出: Hello*****
print(f"{text:^10}") # 输出: Hello
print(f"{text:.3}") # 输出: Hel
百分比格式化: * :.2%:保留两位小数的百分比。
percentage = 0.75
print(f"{percentage:.2%}") # 输出: 75.00%
日期和时间格式化: * :%Y-%m-%d %H:%M:%S:格式化日期和时间。
from datetime import datetime
now = datetime.now()
print(f"{now:%Y-%m-%d %H:%M:%S}") # 输出: 例如 2023-04-30 12:34:56
千位分隔符: * :,:使用千位分隔符。
large_number = 123456789
print(f"{large_number:,}") # 输出: 123,456,789
颜色
color = "red"
text = "Hello, World!"
color_code = {"red": "\033[31m", "green": "\033[32m", "blue": "\033[34m"}
reset_code = "\033[0m"
print(f"{color_code[color]}{text}{reset_code}") # 输出: 红色文本 Hello, World!
多行
name = "Alice"
age = 30
message = (
f"Name: {name}\n"
f"Age: {age}\n"
f"Description: {name} is {age} years old."
)
print(message)