Trong Python như vẫn có hai cách khác nhau để tạo ra định dạng đầu ra:Cách in bằng Python: với dạng 'định dạng' hoặc phần trăm?
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))
Có một cách để được ưa thích hơn người kia? Chúng tương đương, sự khác biệt là gì? Dạng nào nên được sử dụng, đặc biệt là cho Python3?
Tài liệu mới nói điều này về toán tử phần trăm: "Các hoạt động định dạng được mô tả ở đây thể hiện một loạt các quirks dẫn đến một số lỗi phổ biến ... "nhưng không được dùng **. http://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting – guettli
Nó không được chính thức ngừng sử dụng, nhưng bạn được khuyến khích không sử dụng nó. – BrenBarn
Related: http://bugs.python.org/issue14123 – guettli