字符串格式化(%占位符)

常用占位符

占位符作用
%s填充字符串,也可以接收数字,自动转字符串
%d填充整数;浮点数会直接砍掉小数转整数;不能填字符串,会报错
%f填充浮点数(小数);整数会自动补.000000

1、%d 整数占位符

# √ 填入整数
"我是小学生,我今年%d岁" % 9
# 输出:'我是小学生,我今年9岁'

# √ 填入浮点数,小数直接舍弃
"我是小学生,我今年%d岁" % 9.1111
# 输出:'我是小学生,我今年9岁'

# X 填入字符串,直接报错 TypeError
"我是小学生,我今年%d岁" % "9"
# TypeError: %d format: a number is required, not strCode language: PHP (php)

2、%f 浮点数占位符

# 整数传给%f,自动补6位小数
"我是小学生,我今年%f岁" % 9
# '我是小学生,我今年9.000000岁'

# 传入小数,保留原有小数
"我是小学生,我今年%f岁" % 9.12332323
# '我是小学生,我今年9.123323岁'Code language: PHP (php)

print 的逗号 和 %格式化 的区别

# 1. 逗号:只是print打印多个参数,不会做字符串填充!!
print("sdfdsf%d", 23)
# 输出:sdfdsf%d 23   %d没有被替换,原样输出

# 2. % 才是字符串格式化语法!!
print("sdfdsf%d" % 23)
# 输出:sdfdsf23  占位符成功替换Code language: PHP (php)

  • print(字符串, 值):逗号是打印多个东西,不做格式化
  • print("xxx%d" % 值)% 才是字符串占位替换

总结

  • %s通用性最强,数字、字符串都可以放进去;
  • %d专门给整数,不要传字符串;
  • %f专门给小数,默认保留6位小数。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注