在Python中,string.format()
方法允许你使用占位符(大括号{}
)来插入变量,并通过格式化字符串来自定义这些变量的显示方式。以下是如何自定义string.format()
的格式化规则的一些基本方法:
- 对齐:
使用
:
在占位符中指定对齐方式。例如,{:<10}
表示左对齐,宽度为10个字符。类似地,{:>10}
表示右对齐,{:^10}
表示居中对齐。
print("{:<10} {:>10} {:^10}".format("Left", "Right", "Center"))
输出:
Left Right Center
- 填充:
使用
0
作为填充字符。例如,{:<010}
表示左对齐,并使用0填充至宽度为10个字符。
print("{:<010} {:>010} {:^010}".format("Left", "Right", "Center"))
输出:
0000000000Left 0000000000Right 0000000000Center
- 宽度: 指定占位符的最小宽度。如果内容不足,将使用空格或其他指定的填充字符进行填充。
print("{:10} {:10} {:10}".format("Short", "Medium", "Longer"))
输出:
Short Medium Longer
- 精度:
对于浮点数,可以使用
:
后跟一个数字来指定小数点后的位数。例如,{:.2f}
表示保留两位小数。
print("{:.2f} {:.2f} {:.2f}".format(1.2345, 6.7890, 12.3456))
输出:
1.23 6.79 12.35
- 类型转换:
可以在占位符后指定一个转换字符来改变变量的类型。例如,
{}
默认是字符串,但你可以使用%d
来表示整数,%f
来表示浮点数等。
print("Integer: %d, Float: %.2f" % (42, 3.14159))
注意:虽然这种方法在旧版本的Python中很常见,但在新版本中,建议使用string.format()
方法或f-string(Python 3.6+)来进行格式化。
使用string.format()
的示例:
name = "Alice" age = 30 print("My name is {0} and I am {1} years old.".format(name, age))
输出:
My name is Alice and I am 30 years old.
使用f-string的示例(Python 3.6+):
name = "Bob" age = 25 print(f"My name is {name} and I am {age} years old.")
输出:
My name is Bob and I am 25 years old.