如何自定义string.format的格式化规则

avatar
作者
猴君
阅读量:0

在Python中,string.format()方法允许你使用占位符(大括号{})来插入变量,并通过格式化字符串来自定义这些变量的显示方式。以下是如何自定义string.format()的格式化规则的一些基本方法:

  1. 对齐: 使用:在占位符中指定对齐方式。例如,{:<10}表示左对齐,宽度为10个字符。类似地,{:>10}表示右对齐,{:^10}表示居中对齐。
print("{:<10} {:>10} {:^10}".format("Left", "Right", "Center")) 

输出:

Left         Right        Center 
  1. 填充: 使用0作为填充字符。例如,{:<010}表示左对齐,并使用0填充至宽度为10个字符。
print("{:<010} {:>010} {:^010}".format("Left", "Right", "Center")) 

输出:

0000000000Left     0000000000Right    0000000000Center 
  1. 宽度: 指定占位符的最小宽度。如果内容不足,将使用空格或其他指定的填充字符进行填充。
print("{:10} {:10} {:10}".format("Short", "Medium", "Longer")) 

输出:

Short        Medium      Longer 
  1. 精度: 对于浮点数,可以使用:后跟一个数字来指定小数点后的位数。例如,{:.2f}表示保留两位小数。
print("{:.2f} {:.2f} {:.2f}".format(1.2345, 6.7890, 12.3456)) 

输出:

1.23 6.79 12.35 
  1. 类型转换: 可以在占位符后指定一个转换字符来改变变量的类型。例如,{}默认是字符串,但你可以使用%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. 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!