Скрипт вывода содержания файла со списком (например, IP адресов)

IP File Validation Script
Код скрипта:
import sys
import os.path
def ip_file_valid():
"""
Запрашивает у пользователя путь к файлу с IP-адресами, проверяет его существование,
считывает содержимое и возвращает список IP-адресов.
"""
ip_file = input("\n# Пожалуйста, введите путь к файлу с IP-адресами серверов - например, ./serverip.env : ")
if not os.path.isfile(ip_file):
print(f"\n* Файл {ip_file} не существует. \n* Завершение программы.\n")
sys.exit()
try:
with open(ip_file, 'r') as selected_ip_file:
ip_list = [line.strip() for line in selected_ip_file] # Чтение и удаление пробелов
return ip_list
except Exception as e:
print(f"\n* Произошла ошибка при чтении файла: {e} \n* Завершение программы.\n")
sys.exit()
Объяснение кода:
Этот скрипт на Python предназначен для проверки и чтения IP-адресов из файла, указанного пользователем.
1. Импорт модулей:
import sys
: Предоставляет доступ к некоторым переменным и функциям, взаимодействующим с интерпретатором Python (например, для завершения программы).
import os.path
: Модуль, содержащий функции для работы с путями к файлам (например, проверка существования файла).
2. Функция
ip_file_valid()
:Определяет функцию, которая выполняет следующие действия:
- Запрашивает у пользователя путь к файлу с IP-адресами.
- Проверяет, существует ли файл по указанному пути. Если файл не существует, выводит сообщение об ошибке и завершает программу.
- Открывает файл для чтения, считывает строки, удаляет пробелы в начале и конце каждой строки и возвращает список IP-адресов.
- Использует
try...except
для обработки возможных ошибок при чтении файла (например, если файл не может быть открыт из-за прав доступа). Если возникает ошибка, выводит сообщение и завершает программу. - Использует конструкцию
with open(...)
для автоматического закрытия файла после завершения работы с ним, даже если произошла ошибка.
Основные части функции:
ip_file = input("\n# Пожалуйста, введите ..... например, ./serverip.env : ")
Запрашивает у пользователя путь к файлу.if not os.path.isfile(ip_file):
: Проверяет, существует ли файл.with open(ip_file, 'r') as selected_ip_file:
: Открывает файл для чтения.ip_list = [line.strip() for line in selected_ip_file]
: Считывает строки из файла и удаляет пробелы.except Exception as e:
: Обрабатывает возможные исключения.sys.exit()
: Завершает программу.
Функция возвращает список IP-адресов, считанных из файла (каждый IP-адрес - это строка без начальных и конечных пробелов).
Конспект:
Суббота, 09 августа 2025