什么';python中%r、%s和%d之间的区别是什么?
嗯,我只是在python上总是使用%r,但我不知道什么时候我必须使用这些其他格式…这在中进行了解释。总之,什么';python中%r、%s和%d之间的区别是什么?,python,string,Python,String,嗯,我只是在python上总是使用%r,但我不知道什么时候我必须使用这些其他格式…这在中进行了解释。总之, %d将格式化一个数字以供显示 %s将插入对象的表示字符串(即str(o)) %r将插入对象的规范字符串表示形式(即repr(o)) 如果您正在格式化一个整数,那么它们是等效的。对于大多数对象,情况并非如此。中对此进行了解释。总之, %d将格式化一个数字以供显示 %s将插入对象的表示字符串(即str(o)) %r将插入对象的规范字符串表示形式(即repr(o)) 如果您正在格式化一个
将格式化一个数字以供显示%d
将插入对象的表示字符串(即%s
)str(o)
将插入对象的规范字符串表示形式(即%r
)repr(o)
将格式化一个数字以供显示%d
将插入对象的表示字符串(即%s
)str(o)
将插入对象的规范字符串表示形式(即%r
)repr(o)
如果您正在格式化一个整数,那么它们是等效的。对于大多数对象,情况并非如此。以下是一个补充詹姆斯·亨斯特里奇答案的示例:
class Cheese(float):
def __str__(self):
return 'Muenster'
def __repr__(self):
return 'Stilton'
chunk = Cheese(-123.4)
print(str(chunk))
# Muenster
print(repr(chunk))
# Stilton
print(int(chunk))
# -123
print('%s\t%r\t%d'%(chunk, chunk, chunk))
# Muenster Stilton -123
下面是一个补充詹姆斯·亨斯特里奇答案的例子:
class Cheese(float):
def __str__(self):
return 'Muenster'
def __repr__(self):
return 'Stilton'
chunk = Cheese(-123.4)
print(str(chunk))
# Muenster
print(repr(chunk))
# Stilton
print(int(chunk))
# -123
print('%s\t%r\t%d'%(chunk, chunk, chunk))
# Muenster Stilton -123
这肯定存在于互联网上的某个地方,至少
str.format
对这些稍微清楚一些。这肯定存在于互联网上的某个地方,至少str.format
对这些稍微清楚一些。