🎉 ¡Felicidades! 🎉
¡Has resuelto la tarea brillantemente! Era un reto difícil, pero encontraste la solución correcta. ¡Estás un paso más cerca de dominar la programación! Sigue así, cada etapa superada te hace más fuerte.
ProgerLib Python para todos
Escriba un programa que acepte el archivo de registro del servidor, encuentre todas las direcciones IP únicas y muestre su número. & nbsp;
rn
algunas líneas de texto, algunas líneas de texto, algunas líneas. Cada una de ellas es un registro en el registro. La dirección IP siempre es el primer elemento en la línea y está separada del resto por un espacio. La entrada finaliza cuando se transmite "0".
varias líneas. La IP siempre se escribe al principio.
Un número & mdash; La cantidad de direcciones IP únicas encontradas en los datos de entrada.
192.168.0.1 - [10/Ene/2024: 13:55:36 +0000] "GET /index.html HTTP/1.1" 200 2326
192.168.0.2 - [10/Ene/2024: 12:11:06 +0000] "GET /index.html HTTP/1.1" 200 1234
192.168.0.1 - [11/Ene/2024: 16:45:21 +0000] "GET /index.html HTTP/1.1" 200 2326
0
2
# Множество для хранения уникальных IP-адресов
unique_ips = set()
while True:
line = input().strip()
# Проверка на завершение ввода
if line == "0":
break
# Пропускаем пустые строки
if not line:
continue
# Извлекаем первый элемент строки (предполагаемый IP)
parts = line.split()
if not parts:
continue
potential_ip = parts[0]
# Проверяем, является ли строка валидным IPv4 адресом
# Разделяем строку по точкам
ip_parts = potential_ip.split('.')
# Должно быть ровно 4 части
if len(ip_parts) != 4:
continue
valid_ip = True
# Проверяем каждую часть IP
for part in ip_parts:
# Каждая часть должна состоять только из цифр
if not part.isdigit():
valid_ip = False
break
# Преобразуем в число и проверяем диапазон (0-255)
num = int(part)
if num < 0 or num > 255:
valid_ip = False
break
# Проверяем, нет ли ведущих нулей (кроме случая, когда число равно 0)
if len(part) > 1 and part[0] == '0':
valid_ip = False
break
# Если IP валиден - добавляем в множество
if valid_ip:
unique_ips.add(potential_ip)
# Выводим количество уникальных IP-адресов
print(len(unique_ips))
🎉 ¡Felicidades! 🎉
¡Has resuelto la tarea brillantemente! Era un reto difícil, pero encontraste la solución correcta. ¡Estás un paso más cerca de dominar la programación! Sigue así, cada etapa superada te hace más fuerte.
AD
Publicidad
Ejecutando tu código...