我正在使用Python 2.7.6。我今天偶然碰到了这个。
我的意思是通过格式化程序将整数转换为字符串。像这样:
a = 50
b = "%d" % (a)
但是,我改为这样做
a = 50
b = "%s" % (a)
里面也跑得很好。我不明白这是怎么回事。这里会发生双重转换吗?
确切地说,如何%s
接受整数并且仍然不引发任何错误?
"%s" % (a)
调用的__str__
方法a
。
您无需使用"%d" % (a)
将整数转换为字符串,只需执行str(a)
但是,使用"%d" % (a)
将确保a可转换为整数,例如"%d" % "hello world"
将不起作用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句