Операторы строки - введение
Пришло время вернуться к этим двум арифметическим операторам: +
и *
.
Мы хотим показать вам, что у них есть вторая функция. Они могут сделать что-то большее, чем просто добавить и умножить.
Мы видели их в действии, где их аргументы являются числами (целыми или плавающими, это не имеет значения).
Теперь мы покажем, что они также могут обрабатывать строки, хотя и весьма специфическим образом.
Конкатенация
Знак +
(плюс) при применении к двум строкам становится оператором конкатенации:
string + string
Он просто объединяет (склеивает) две строки в одну. Конечно, как и его арифметический брат, его можно использовать более одного раза в одном выражении, и в таком контексте он ведет себя в соответствии с левосторонней ассоциативностью.
В отличие от своего арифметического брата, оператор конкатенации является не коммутативным, т.е., "ab" + "ba"
не совпадает с "ba" + "ab"
.
Не забудьте - если вы хотите, чтобы знак +
был конкатенатором, а не сумматором, вы должны убедиться, что оба его аргумента являются строками.
Здесь нельзя смешивать типы.
Эта простая программа отображает знак +
во второй раз:
fnam = input("May I have your first name, please? ")
lnam = input("May I have your last name, please? ")
print("Thank you.")
print("\nYour name is " + fnam + " " + lnam + ".")
Примечание: использование +
для объединения строк позволяет создавать вывод более точным способом, чем с помощью чистой функции print()
, даже если она обогащена end=
и sep=
аргументы ключевых слов.
Запустите код и посмотрите, соответствует ли вывод вашим прогнозам.