# Как Конкатенировать Строки в Python: Полное Руководство

В этом учебнике вы узнаете, как использовать Python для объединения строк. Умение работать со строками в Python — это важный навык в почти каждой программе, которую вы будете писать. В некоторых случаях вам захочется отобразить текст в вашей программе и обеспечить читабельность кода. В других случаях вы захотите стремиться к скорости вашей программы, и ваш метод объединения строк будет другим. Аналогично, если ваш код требует обратной совместимости, вам захочется использовать один метод вместо другого.

К концу этого учебника вы узнаете:

* Различные способы объединения строк в Python
* Как обеспечить обратную совместимость при объединении строк в Python
* Какой метод объединения строк является наиболее читабельным в Python

### Содержание

* [Методы объединения строк в Python: сравнение](#metody-obedineniya-strok-v-python-sravnenie)
* [Объединение строк в Python с использованием оператора `+`](#obedinenie-strok-v-python-s-ispolzovaniem-operatora)
* [Объединение строк в Python с использованием оператора `+=`](#obedinenie-strok-v-python-s-ispolzovaniem-operatora-1)
* [Объединение строк в Python с использованием **f-строк**](#obedinenie-strok-v-python-s-ispolzovaniem-f-strok)
* [Объединение строк в Python с использованием оператора `*`](#obedinenie-strok-v-python-s-ispolzovaniem-operatora-2)
* [Объединение строковых литералов в Python с использованием метода `join`](#obedinenie-strokovykh-literalov-v-python-s-ispolzovaniem-metoda-join)
* [Объединение строк в Python с использованием метода `format`](#obedinenie-strok-v-python-s-ispolzovaniem-metoda-format)
* [Объединение строк в Python с использованием форматирования `%`](#obedinenie-strok-v-python-s-ispolzovaniem-formatirovaniya)
* [Объединение строк в Python с использованием строковых литералов](#obedinenie-strok-v-python-s-ispolzovaniem-strokovykh-literalov)
* [Заключение](#zaklyuchenie)
* [Дополнительные ресурсы](#dopolnitelnye-resursy)

### Методы объединения строк в Python: сравнение

Таблица ниже рассматривает различные методы объединения строк в Python. Каждый из методов рассматривается более подробно в разделах ниже, а также некоторые методы, которые не вошли в список!

### Объединение строк в Python с использованием оператора `+`

Один из самых простых и распространенных методов объединения строк в Python — использование оператора `+`. Это работает так: оператор `+` объединяет две строки. В случае строк оператор `+` действует как оператор конкатенации.

Давайте посмотрим на пример:

```python
# Использование + для объединения строк в Python
print('Добро пожаловать в ' + 'bemind.gitbook.io')

# Возвращает:
# Добро пожаловать в bemind.gitbook.io
```

Этот метод также работает со строками, присвоенными переменным. Давайте посмотрим, как это выглядит:

```python
# Использование + для объединения строк в Python
first = 'Добро пожаловать в '
second = 'bemind.gitbook.io'

print(first + second)

# Возвращает:
# Добро пожаловать в bemind.gitbook.io
```

Важно отметить, что это работает только со строками. Если мы попытаемся объединить строку и целое число, например, будет выдана ошибка:

```python
# Попытка объединить строку и целое число
print('Hello!' + 3)

# Вызывает:
# TypeError: can only concatenate str (not "int") to str
```

Как показано в этом учебнике, сначала нужно преобразовать целое число в строку.

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

### Объединение строк в Python с использованием оператора `+=`

В предыдущем разделе вы узнали, как объединять строки с использованием оператора `+`. Аналогично, вы можете использовать оператор присваивания с добавлением, `+=`, для объединения строк. На самом деле, этот оператор отлично подходит для добавления одной строки к другой.

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

```python
# Использование += для объединения строк в Python
sentence = 'Добро пожаловать в '
second = 'bemind.gitbook.io'

sentence += second
print(sentence)

# Возвращает:
# Добро пожаловать в bemind.gitbook.io
```

Имейте в виду, что хотя кажется, что строка добавляется в конец другой, на самом деле это не так. Поскольку строки в Python неизменяемы, исходная строка фактически уничтожается, и объединенные строки создаются заново.

### Объединение строк в Python с использованием f-строк

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

Python f-строки начинаются с буквы `f` и позволяют помещать переменные для интерполяции в фигурные скобки. Переменные оцениваются во время выполнения, и их строковое представление помещается в строку.

Это лучше всего объяснить на примере, который мы можем рассмотреть ниже:

```python
# Использование Python f-строк для объединения строк
website = 'bemind.gitbook.io'
print(f'Добро пожаловать в {website}!')

# Возвращает:
# Добро пожаловать в bemind.gitbook.io!
```

Отличная особенность этого метода — его читабельность. Нет необходимости гадать, как будет выглядеть ваша окончательная строка.

### Объединение строк в Python с использованием оператора `*`

Еще один отличный способ объединения строк — использование оператора `*`. Как следует из названия, вы умножаете строку определенное количество раз. Это позволяет объединить строку с самой собой заданное количество раз.

Давайте посмотрим, как это выглядит:

```python
# Умножение строки
word = 'hello'

print(word * 3)

# Возвращает:
# hellohellohello
```

В приведенном выше коде мы вывели строку **'hello'** три раза.

### Объединение строковых литералов в Python с использованием метода `join`

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

```python
# Объединение строк с .join()
words = ['welcome', 'to', 'bemind.gitbook.io']

joined = ' '.join(words)
print(joined)

# Возвращает:
# welcome to bemind.gitbook.io
```

В приведенном выше примере мы применяем метод `.join()` к строке, которую хотим использовать для объединения элементов. Поэтому строка, к которой мы применяем метод, является разделителем, который мы хотим использовать.

### Объединение строк в Python с использованием метода `format`

В более старых версиях Python фигурные скобки (аналогично f-строкам) также позволяли объединять строки. Однако, в отличие от Python f-строк, этот метод не такой читабельный. Давайте посмотрим, как это работает, на примере:

```python
# Использование format для объединения строк
word1 = 'Hey'
word2 = 'there'

words = '{} {}!'.format(word1, word2)

print(words)

# Возвращает:
# Hey there!
```

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

### Объединение строк в Python с использованием форматирования `%`

Аналогично методу `format`, вы можете использовать оператор `%` в строках для объединения строк. Этот метод позволяет вставлять переменные в строки, хотя и менее читабельно.

Давайте посмотрим на пример:

```python
# Использование % для объединения строк
word1 = 'Hey'
word2 = 'there'

words = '%s %s!' % (word1, word2)

print(words)

# Возвращает:
# Hey there!
```

Лично я считаю этот метод наименее читабельным из доступных методов.

### Объединение строк в Python с использованием строковых литералов

Этот последний метод объединения строк в Python — использование строковых литералов последовательно. Размещая одну строку после другой, Python неявно объединяет эти строки.

Давайте посмотрим на пример, как это работает:

```python
# Объединение строк с помощью строковых литералов
joined = "hey " "there"

print(joined)

# Возвращает:
# hey there
```

### Заключение

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

### Дополнительные ресурсы

Чтобы узнать больше о связанных темах, ознакомьтесь с учебниками ниже:

* Python: Сортировка строки (4 разных способа)
* Python: Удаление специальных символов из строки
* Python: Удаление знаков препинания из строки (3 разных способа!)
* Python `zfill & rjust`: Добавление символов в строку Python
* [Python Strings: Официальная документация](https://docs.python.org/3/library/string.html)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bemind.gitbook.io/neural/python/python-strings/kak-konkatenirovat-stroki-v-python-polnoe-rukovodstvo.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
