Задача курса
pandas .str.strip, lower и replace: очистка адресов
Курс «NumPy и pandas: практический тренажёр» · урок «Текстовые столбцы: нормализация и разбор через .str»
Потренируйтесь очищать строки в Series цепочкой векторных методов pandas.
Условие
Нормализация адресов: strip, lower и replace без циклов
Что уже дано
Проверяющая система запускает вашу программу и подаёт данные через stdin. Никаких заранее созданных переменных нет — вы читаете всё сами.
Что нужно сделать
Напишите программу, которая нормализует таблицу адресов:
- Читает из
stdinцелое числоn— количество строк. - Читает следующие
nстрок; каждая содержит один токен — «грязный» адрес (строка, которая может начинаться и заканчиваться пробелами, содержать буквы в произвольном регистре и дефисы вместо пробелов между словами). Токен считывается черезinput()— пробелы внутри токена сохраняются. - Создаёт
pd.Seriesс именемrawиз прочитанных строк. - Создаёт
pd.Seriesс именемstep1— результат.str.strip()наraw. - Создаёт
pd.Seriesс именемstep2— результат.str.lower()наstep1. - Создаёт
pd.Seriesс именемstep3— результат.str.replace('-', ' ', regex=False)наstep2. - Выводит в
stdoutровно три строки:
- Строка 1: значения
step1через|(пробел-вертикальная черта-пробел). - Строка 2: значения
step2через|. - Строка 3: значения
step3через|.
Запрещено использовать Python-циклы для шагов 4–7.
Ввод и вывод
Программа читает stdin и пишет в stdout.
Формат ввода
Первая строка — целое число n (1 ≤ n ≤ 10).
Следующие n строк — адреса; каждый адрес — одна строка, возможно с пробелами по краям и дефисами внутри.
Формат вывода
Ровно три строки. Значения внутри строки разделяются |.
Примеры
Пример 1
- Ввод
3 Ленина-Улица САДОВОЕ-Кольцо Арбат-ПЛОЩАДЬ
- Ожидаемый результат
Ленина-Улица | САДОВОЕ-Кольцо | Арбат-ПЛОЩАДЬ ленина-улица | садовое-кольцо | арбат-площадь ленина улица | садовое кольцо | арбат площадь
Попробуйте решить
РешениеPython
Без регистрации · результат не сохраняется
