在 Python 中,占位符是python程序中,经常会用到的一种占位方式。其作用是替后面的变量值占一个位置,其中%s
,%d
等是在字符串格式化中经常使用的语法,分别表示字符串和整数的占位符。
让我们来详细地讲解一下这个语法:
1. %s 字符串占位符
在 Python 中,
%s被用作字符串的占位符。当你创建一个字符串时,可以使用
%s 来表示你希望在稍后插入一个字符串的地方。然后,你可以使用
% 运算符来指定你希望插入的字符串。
name = "Alice"
print("Hello, %s" % name)
2.%d 整数占位符
与 %s 类似,
%d 是用作整数的占位符。这意味着你可以使用
%d 来表示你希望在稍后插入一个整数的地方。例如:
age = 25
print("I am %d years old" % age)
3.多个占位符
如果你希望在同一个字符串中插入多个值,你可以使用括号 ( )
来指定这些值,然后用 , 来分隔它们。例如
name = "小马"
age = 25
print("Hello, my name is %s and I am %d years old" % (name, age))
4.注意:
% 的方式虽然可以实现字符串格式化,但在 Python 3.6 以后,官方更推荐使用 f-string(格式化字符串)的方式,例如:
name = "小马"
age = 28
print(f"Hello, my name is {name} and I am {age} years old")
5. .format可以实现%所实现的,但功能更加强大
# 不带字段
print('{},{}' .format('hello','小马') )
# 带字段、数字、关键字
print('{0}{1}{0}'.format('hello','小马') )
# 带关键字
print('{a} {b}'.format(a='hello',b='小马'))
#高阶:{:20s}意思是提取20位字符,并把fromat里的内容左右对齐(默认,符号:<)
# 默认左对齐
print('{:20s}'.format('小马'))
# 左对齐
print('{:<20s}'.format('小马'))
# 右对齐
print('{:>20s}'.format('小马'))
# 居中
print('{:^20s}'.format('小马'))
6.其他的占位符:
%s:字符串 (或任何对象,使用 str() 转为字符串)
%d:十进制整数
%f:浮点数
%.f:保留特定位数的浮点数
%x:十六进制数,小写
%X:十六进制数,大写
%e:科学计数法,小写 e
%E:科学计数法,大写 E
%o:八进制数
%%:字面意义的百分号