Замените каждую точку на '[.]' с помощью str.replace(). Для корректного IPv4 из условия дополнительный разбор адреса не требуется.
Замена точек в IPv4‑адресе на безопасный вид
Замените каждую точку на '[.]' с помощью str.replace(). Для корректного IPv4 из условия дополнительный разбор адреса не требуется.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Дан корректный IPv4‑адрес ip. Требуется вернуть «обезвреженную» форму этого адреса. Под «обезвреживанием» понимается замена каждой точки "." на строку "[.]".
Пример 1: Ввод: ip = "1.1.1.1" Вывод: "1[.]1[.]1[.]1" Пояснение: Каждая точка заменяется на "[.]", получаем "1[.]1[.]1[.]1".
Пример 2: Ввод: ip = "255.100.50.0" Вывод: "255[.]100[.]50[.]0" Пояснение: Все точки заменяются на "[.]", в результате получаем "255[.]100[.]50[.]0".
Ответ
Замените каждую точку на '[.]' с помощью str.replace(). Для корректного IPv4 из условия дополнительный разбор адреса не требуется.
Решение:
def defang(ip: str) -> str:
return ip.replace('.', '[.]')
Для '1.1.1.1' получится '1[.]1[.]1[.]1'. Метод возвращает новую строку, не изменяя исходную. Это форма отображения для текста, а не валидный адрес для сетевого подключения и не средство сетевой защиты. Если вход не гарантированно корректен, валидация IPv4 должна быть отдельным шагом.