在Python似乎有要产生格式化输出的两种不同的方式:Python的打印方式:用'格式'还是百分比形式?
user = "Alex"
number = 38746
print("%s asked %d questions on stackoverflow.com" % (user, number))
print("{0} asked {1} questions on stackoverflow.com".format(user, number))
是否有要优于另一种方式吗?它们是否相同,有什么区别?应该使用哪种形式,特别是对于Python3?
新文档说明了有关运算符百分比的问题:“这里描述的格式化操作表现出各种各样的怪癖,一些常见的错误......“但它不是**不推荐使用。 http://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting – guettli
尚未正式废弃,但我们鼓励您不要使用它。 – BrenBarn
相关:http://bugs.python.org/issue14123 – guettli