Я розумію, що ми повинні використовувати %sдля об'єднання рядка, а не +в Python.
Я можу зробити що-небудь із:
hello = "hello"
world = "world"
print hello + " " + world
print "%s %s" % (hello, world)
print "{} {}".format(hello, world)
print ' '.join([hello, world])
Але чому я повинен використовувати щось, окрім як +? Швидше написати конкатенацію простим +. Потім , якщо ви подивитеся на рядок форматування, можна вказати типи , наприклад , %sі %dта такі. Я розумію, що може бути краще чітко сказати про тип.
Але потім я прочитав, що +слід уникати використання конкатенації, навіть якщо це простіше набрати. Чи є чітка причина, що струни повинні бути об'єднані одним із інших способів?
%sне для конкатенації, це специфікація перетворення для рядка форматування , отриманого з З - х printf(3). Існують випадки використання цього оператора конкатенації; яку ви використовуєте, має базуватися на судженнях ситуації, а не на догмі. Наскільки легко написати код зовсім не має значення, оскільки ви збираєтесь це робити лише один раз.
print(f"{hello} {world}"), має читабельність конкатенації, оскільки змінні видно там, де вони зустрічаються в рядку, і швидше, ніж str.format.