Python

Конкатенация: что значит конкатенировать в математике и на Python

Lorem ipsum dolor

Иногда в программировании встречаются непонятные слова, которые с ходу сбивают с  толку начинающего программиста. Одним из таких слов является «конкатенация». Каждый программист рано или поздно встретится с этим термином, например «конкатенация строк». Бояться не надо. Под страшным словом «конкатенация» скрывается довольно простая операция в программировании — объединение или сложение.

Сегодня в статье мы рассмотрим, как происходит  конкатенация строк в Python. Оказывается, даже простая операция сложения строк в Python может произойти несколькими способами.  В других языках программирования также присутствует  конкатенация, однако способы и правила осуществления могут несколько отличаться от способов на Питоне.

Конкатенация строк в Python

Итак, что такое конкатенация?  Конкатенация — это объединение или сложение. В статье мы будем использовать как термин  конкатенация, так и его синонимы.

В  Python  конкатенация строк осуществляется  пятью способами:

  • самый простой способ — это использовать  оператор сложения «+»;

  • способ с использованием метода «join()»;

  • способ с использованием оператора «%»;

  • способ с использованием функции «format()»;

  • способ с использованием специальных «f-строк».

Теперь рассмотрим как проходит  конкатенация каждым отдельным способом.

Конкатенация с использованием оператора сложения «+»

Это самый распространенный способ сложения строк. В программировании он используется чаще других. Вот как выглядит простейший пример в коде:

myString1 = "Дормидонт"

myString2 = "Платонович"

myString3 = "Бухтияров"

 

myString4 = myString1 + myString2 + myString3

print(myString4)

 

Результатом будет: ДормидонтПлатоновичБухтияров

Если взглянуть на результат, тогда видно, что такой способ не расставляет пробелы между объединенными строками. Поэтому приходится идти на маленькую хитрость и добавлять между строками "пробел" самостоятельно. В нашем примере код будет следующим:

myString1 = "Дормидонт"

myString2 = "Платонович"

myString3 = "Бухтияров"

 

myString4 = myString1 + " " + myString2 + " " + myString3

print(myString4)

 

Результатом будет: Дормидонт Платонович Бухтияров

В результате у нас между словами появился пробел. "Пробел" входит в категорию невидимых символов, поэтому чтобы он отразился при сложении, его нужно обозначить, что мы и сделали.

Конкатенация таким способом позволяет объединять строки, которые получаются в результате ввода. Вот как это выглядит в коде:

myString1 = input("Введите ваше имя:\n")  //Дормидонт

myString2 = input("Введите ваше отчество:\n") //Платонович

myString3 = input("Введите вашу фамилию:\n") //Бухтияров

 

myString4 = myString1 + " " + myString2 + " " + myString3

print(myString4)

 

Результатом будет: Дормидонт Платонович Бухтияров

Важный момент, такой тип сложения получится только в том случае, если аргументы сложения будут строками.

Конкатенация строк Python при помощи функции "join()"

Функция "join()" является специальным инструментом для склеивания строк. Она используется не только для строк, но и еще для словарей и списков Python. Она, как и в первом случае, склеивает строки без пробелов. Для того, чтобы пробел между строками появился, его там нужно обозначить. 

Вот как это выглядит в коде:

myString1 = "Дормидонт"

myString2 = "Платонович"

myString3 = "Бухтияров"

 

print(.join([myString1, myString2, myString3])) //без пробела

print( " ".join([myString1, myString2, myString3])) //с пробелом



Результатом будет: ДормидонтПлатоновичБухтияров

                                 Дормидонт Платонович Бухтияров

 

При помощи функции "join()" также можно объединить строки, получаемые на вводе. Код будет следующий:

myString1 = input("Введите ваше имя:\n")  //Дормидонт

myString2 = input("Введите ваше отчество:\n") //Платонович

myString3 = input("Введите вашу фамилию:\n") //Бухтияров

print( " ".join([myString1, myString2, myString3])) //с пробелом

 

Результат будет: Дормидонт Платонович Бухтияров

Конкатенация строк с применением оператора "%"

Оператор "%" чаще всего используется для форматирования строк, однако его также можно использовать и для их объединения. Код будет выглядеть таким образом:

myString1 = "Дормидонт"

myString2 = "Платонович"

myString3 = "Бухтияров"

 

result = "%s %s %s" % (myString1, myString2, myString)

print(result)

 

Результатом будет: Дормидонт Платонович Бухтияров

Плюс такого способа — он сразу расставляет проблем между строками. "%s" — это флаг строки, где "s" — это "string".

Конкатенация с помощью функции "format()"

Объединить строки в Питоне можно с помощью функции "format()". Вот как это выглядит в коде:

myString1 = "Дормидонт"

myString2 = "Платонович"

myString3 = "Бухтияров"

 

myString4 = "{} {} {}".format(myString1, myString2, myString3)

print(myString4)

 

Результат будет: Дормидонт Платонович Бухтияров

Конкатенация с помощью специальных f-строк

В Python 3.6 и выше появилась возможность использовать специальный формат f-строк. Конкатенация с помощью f-строк удобна тем, что позволяет объединять не только строки, но и другие типы данных.

Вот как это выглядит в коде:

myString1 = "Дормидонт"

myString2 = "Платонович"

myString3 = "Бухтияров"

age = 101

status = "веб-разработчиу"

 

print (f"Имя: {myString1} {myString2} {myString3}.Возраст: {age} год. Должность: начинающий {status}")

 

Результат: Имя: Дормидонт Платонович Бухтияров. Возраст: 101 год. Должность: начинающий веб-разработчик.

Заключение

Что такое конкатенация? Конкатенация — это объединение, поэтому не нужно бояться этого незнакомого слова в программировании. Чаще всего этот термин используется в выражении «конкатенация строк». Сегодня мы показали, как проходит конкатенация строк в Python. Выбирайте любой подходящий способ и используйте его в собственных целях.

Схожие статьи

Как разобраться в дереве принятия решений и сделать его на Python
Python

Как разобраться в дереве принятия решений и сделать его на Python

Disable path length limit при установке Python: что это
Python

Disable path length limit при установке Python: что это

Как в Python присвоить значение переменной? Мануал для новичков
Python

Как в Python присвоить значение переменной? Мануал для новичков

Python

Как установить tkinter для Python