/
Программирование
/
Курс Python
/

Переменные и конкатенация

Python: Переменные и конкатенация

Ранее мы уже склеивали строки напрямую, используя конкатенацию. Теперь сделаем то же самое, но с использованием переменных. Хорошая новость: синтаксис остается тем же. Просто подставляются значения переменных.

Склеиваем две строки напрямую

what = 'Kings' + 'road'
print(what)  # => Kingsroad

Здесь все просто: две строки соединяются в одну. Так работает конкатенация: оператор + складывает строки, создавая новую строку.

Склеиваем строку и переменную

Если в переменной first лежит строка "Kings", мы можем спокойно склеить ее с другой строкой:

first = 'Kings'
what = first + 'road'
print(what)  # => Kingsroad

Python подставит значение переменной, выполнит операцию и создаст итоговую строку.

Склеиваем две переменные

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

first = 'Kings'
last = 'road'
what = first + last
print(what)  # => Kingsroad

Можно добавлять и пробелы:

full = first + " " + last
print(full)  # => Kings road
what = 'Kings'
who  = 'road'

what    +  ' '  +  who
└─┬──┘           └──┬─┘
'Kings' + ' '  + 'road'
└────────┬─────────┘
    'Kings road'

А что если переменная содержит число?

Попробуем так:

age = 42
# print("Age: " + age)  #  Ошибка!

Программа выдаст ошибку: нельзя складывать строку и число. Чтобы склеить строку с числом, нужно преобразовать число в строку:

age = 42
print('Age: ' + str(age))  #  Age: 42

То же самое касается переменных с результатами вычислений:

price = 50 * 1.25 * 6.91  # => 431.875
print('Price in yuans: ' + str(price))  #  Price in yuans: 431.875

Функция str() превращает любое значение (число, результат вычисления, булево и т.д.) в строку. Подробнее про функции мы поговорим в будущих уроках.

Задание

Интернет-магазин отправляет покупателю письмо после оформления заказа. Письмо генерируется автоматически на основе данных о клиенте.

Напишите программу, которая генерирует приветствие и тело письма, используя уже готовые переменные, и выводит строки на экран.

Для приветствия используйте переменные first_name и greeting, запятую и восклицательный знак. Для тела письма используйте переменные intro и info — второе предложение должно быть на новой строке.

Результат на экране:

Здравствуйте, Анна!
Спасибо за ваш заказ.
Ожидаемая дата доставки — 3 рабочих дня.

Выполните задание, используя только два print().

Полезное

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

  • Помните, что можно создать строку, которая содержит только управляющую последовательность \n. Вы можете конкатенировать эту строку с переменными для правильного форматирования текста.

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются