在Python字符串格式化中,%s和%d之间有什么区别?

我不明白%s%d是做什么的,它们如何工作。

它们用于格式化字符串。%s作为一个字符串的占位符,而%d作为一个数字的占位符。它们的相关值通过一个使用%操作符的元组传入。

name = 'marcog'
number = 42
print '%s %d' % (name, number)

将打印 "marcog 42"。注意,名字是一个字符串(%s),数字是一个整数(%d为十进制)。

详见https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting。

在Python 3中,这个例子将是。

print('%s %d' % (name, number))
评论(5)

%s被用来作为你想注入格式化字符串的字符串值的占位符。

%d用来作为数字或小数值的占位符。

例如(对于Python 3)

print ('%s is %d years old' % ('Joe', 42))

将输出

Joe is 42 years old
评论(3)

它们是格式指定器。当你想把你的Python表达式的值包含在字符串中,并强制执行特定的格式时,就可以使用它们。

参见 Dive into Python 以获得相对详细的介绍。

评论(0)