Python: Конкатенация
Часто строки нужно собирать из нескольких частей, например объединить имя и фамилию, добавить единицу измерения или составить текст из шаблона. Для этого используется операция конкатенации, то есть склеивания строк.
Как объединять строки
В Python строки объединяются с помощью оператора +. Несмотря на то, что этот оператор используется и для сложения чисел, в случае строк он означает объединение, то есть склеивание содержимого.
print('Dragon' + 'stone')
# => DragonstoneПорядок имеет значение. Сначала идет левая часть ('Dragon'), потом правая ('stone'). Результат получается в том порядке, в котором указаны операнды.
Вот как работает объединение нескольких строк. Код:
print('Hello' + ', ' + 'World!')Выполнение:
'Hello' + ', ' + 'World!'
└──┬──┘ └┬┘ └──┬───┘
└────┬───┘ │
'Hello, ' + 'World!'
└──────┬───────┘
'Hello, World!'Примеры.
print('Kings' + 'wood') # => Kingswood
print('Kings' + 'road') # => Kingsroad
# Здесь снаружи двойные кавычки, потому что внутри есть одиночная
print("King's" + 'Landing') # => King'sLandingPython позволяет объединять строки, даже если они записаны в разных кавычках. Главное, чтобы обе части были строками.
Пробел тоже является символом
При объединении Python не вставляет пробелы автоматически. Если между частями должен быть пробел, его нужно указать вручную.
# Пробел в конце первой строки
print("King's " + 'Landing') # => King's Landing
# Пробел в начале второй строки
print("King's" + ' Landing') # => King's LandingРезультат будет одинаковый. Но если пробел не добавить, то слова склеятся.
Управляющие последовательности
В строках можно использовать управляющие последовательности, например \n для переноса строки или \t для табуляции. При конкатенации они работают так же, как и любые другие символы.
print('Hello,' + '\n' + 'World!')
# =>
# Hello,
# World!
print('A' + '\t' + 'B')
# => A BЗаключение
Конкатенация представляет собой объединение строк через +, и строки можно объединять независимо от типа кавычек.
- Склеивание происходит строго в порядке слева направо.
- Пробелы не добавляются автоматически, их нужно включать в строки вручную.
Задание
Сайт автоматически формирует ссылки на страницы пользователей, собирая их из отдельных частей. Соберите ссылку с помощью конкатенации и выведите на экран:
https://github.com/hexlet/exercises-pythonКаждый компонент URL — отдельная строка: протокол, домен, имя владельца, имя репозитория.
Полезное
Если в редакторе есть запись
# BEGINи# END, то код нужно писать между этими строчками.
Python: Конкатенация
Часто строки нужно собирать из нескольких частей, например объединить имя и фамилию, добавить единицу измерения или составить текст из шаблона. Для этого используется операция конкатенации, то есть склеивания строк.
Как объединять строки
В Python строки объединяются с помощью оператора +. Несмотря на то, что этот оператор используется и для сложения чисел, в случае строк он означает объединение, то есть склеивание содержимого.
print('Dragon' + 'stone')
# => DragonstoneПорядок имеет значение. Сначала идет левая часть ('Dragon'), потом правая ('stone'). Результат получается в том порядке, в котором указаны операнды.
Вот как работает объединение нескольких строк. Код:
print('Hello' + ', ' + 'World!')Выполнение:
'Hello' + ', ' + 'World!'
└──┬──┘ └┬┘ └──┬───┘
└────┬───┘ │
'Hello, ' + 'World!'
└──────┬───────┘
'Hello, World!'Примеры.
print('Kings' + 'wood') # => Kingswood
print('Kings' + 'road') # => Kingsroad
# Здесь снаружи двойные кавычки, потому что внутри есть одиночная
print("King's" + 'Landing') # => King'sLandingPython позволяет объединять строки, даже если они записаны в разных кавычках. Главное, чтобы обе части были строками.
Пробел тоже является символом
При объединении Python не вставляет пробелы автоматически. Если между частями должен быть пробел, его нужно указать вручную.
# Пробел в конце первой строки
print("King's " + 'Landing') # => King's Landing
# Пробел в начале второй строки
print("King's" + ' Landing') # => King's LandingРезультат будет одинаковый. Но если пробел не добавить, то слова склеятся.
Управляющие последовательности
В строках можно использовать управляющие последовательности, например \n для переноса строки или \t для табуляции. При конкатенации они работают так же, как и любые другие символы.
print('Hello,' + '\n' + 'World!')
# =>
# Hello,
# World!
print('A' + '\t' + 'B')
# => A BЗаключение
Конкатенация представляет собой объединение строк через +, и строки можно объединять независимо от типа кавычек.
- Склеивание происходит строго в порядке слева направо.
- Пробелы не добавляются автоматически, их нужно включать в строки вручную.
Задание
Сайт автоматически формирует ссылки на страницы пользователей, собирая их из отдельных частей. Соберите ссылку с помощью конкатенации и выведите на экран:
https://github.com/hexlet/exercises-pythonКаждый компонент URL — отдельная строка: протокол, домен, имя владельца, имя репозитория.
Полезное
Если в редакторе есть запись
# BEGINи# END, то код нужно писать между этими строчками.
Ваше упражнение проверяется по этим тестам
import importlib
def test(capsys):
expected = "https://github.com/hexlet/exercises-python"
expect_output(capsys, expected)
def expect_output(capsys, expected):
importlib.import_module('solution')
out, _err = capsys.readouterr()
actual = out.strip('\n')
with capsys.disabled():
print('\n')
print(out)
assert actual == expectedРешение учителя откроется через:
20:00
