Конкатенация строк Python — Simple-Server

    Команда Simple-Server
    03.06.2026
    4 мин

    Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.

    Кратко о задаче

    Возьмем классический пример:

    string1 = "Hello" string2 = "world!" string3 = string1 + ", " + string2 print(string3) Hello, world!

    Здесь мы присвоили строке string1 __ значение __Hello, а строке __string2 значение world!, а затем сложили их, добавив запятую с пробелом в середине, и вывели на экран новую строку.

    Приведем еще пару примеров конкатенации с помощью оператора +. Вот конкатенация трех строк:

    string1 = "I" string2 = "love" string3 = "Python" result = string1 + " " + string2 + " " + string3 print(result) I love Python

    Как видим, никаких отличий. И такой пример:

    first_name = "Monty" last_name = "Python" result = "My name is " + first_name + " " + last_name print(result) My name is Monty Python

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

    В примерах выше мы использовали оператор + для соединения двух или более строк. Но также конкатенация строк в Python 3 может быть выполнена и при помощи метода join(). Вот наш первый пример, записанный таким способом:

    strings = ["Hello", "world!"] string3 = ", ".join(strings) print(string3)

    И в выводе мы увидим всё тот же Hello, world!.

    А вот и два других примера, переписанные с использованием метода join():

    strings = ["I", "love", "Python"] result = " ".join(strings) print(result) I love Python first_name = "Monty" last_name = "Python" strings = ["My name is", first_name, last_name] result = " ".join(strings) print(result) My name is Monty Python

    Обратите внимание, что в обоих примерах мы создали список строк и затем использовали метод join() для их соединения в одну строку. В первом примере мы только добавили пробел для разделения слов, а во втором еще и задействовали переменные в списке.

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

    Если мы просто попытаемся соединить строку и число, то получим ошибку:

    age = 28 message = "I am " + age + " years old." print(message) Traceback (most recent call last): File "C:/Python/Python38/concat1.py", line 2, in <module> message = "I am " + age + " years old." TypeError: can only concatenate str (not "int") to str

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

    Конкатенация строки и числа через str()

    Чтобы исправить эту ошибку, мы можем использовать функцию str() для преобразования числа в строку. Вот пример правильной конкатенации строки и числа:

    age = 28 message = "I am " + str(age) + " years old." print(message) I am 28 years old.

    Мы преобразовали число, заключенное в переменную age, в строку с помощью функции str(), и интерпретатор выдал нам нужный результат.

    Конкатенация строки и числа через format()

    То же самое можно сделать, и используя метод format():

    age = 28 message = "I am {} years old.".format(age) print(message) I am 28 years old.

    Этот метод работает так же, как и функция str(), различается лишь синтаксис.

    Конкатенация строки и числа через f-строки

    И еще один способ вывести такой же результат: задействовать новинку версии 3 — f-строки:

    age = 28 message = f"I am {age} years old." print(message) I am 28 years old.

    f-строки (formatted string literals) в Python действуют так же, как и метод str.format(), но предоставляют более удобный и лаконичный способ переноса значений в строку. С помощью f-строк мы можем вставлять значения переменных прямо внутрь строки, используя фигурные скобки {} и указывая имя переменной внутри этих скобок. Вот еще несколько примеров конкатенации строк и чисел с использованием f-строк:

    name = "Monty" age = 35 print(f"My name is {name} and I am {age} years old.") My name is Monty and I am 35 years old. salary = 100000 tax_rate = 0.25 taxes = salary * tax_rate print(f"My salary is {salary} and my taxes are {taxes}.") My salary is 100000 and my taxes are 25000.0.

    Как видите, мы можем вставлять значения переменных внутрь строки, используя фигурные скобки, и Python автоматически подставляет значения переменных в эти места при выполнении программы. Обратите внимание, что f-строки поддерживают также различные форматы вывода, которые можно указать внутри фигурных скобок. Например, можно указать количество знаков после запятой для чисел с плавающей запятой (или точкой). Это делает f-строки ещё более мощными средствами форматирования.


    Нужен сервер для практики? Арендуйте VPS/VDS в России — root-доступ, NVMe, DDoS-защита и поддержка 24/7.

    VPS для проекта

    VPS с root-доступом, NVMe и поддержкой 24/7 на Simple-Server.

    StarterVDS

    490

    в месяц

    1 ядро

    1 ГБ RAM

    20 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Безлимитный трафик
    Заказать VPS
    Рекомендуем

    PerformanceVDS

    1190

    в месяц

    2 ядра

    4 ГБ RAM

    60 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Базовая DDoS-защита
    Заказать VPS

    Нужна другая конфигурация или чистый VPS без панели?

    Все тарифы VPS

    Похожие статьи, которые могут быть вам интересны