Contents Menu Expand Light mode Dark mode Auto light/dark mode
Python для сетевых инженеров
Python для сетевых инженеров
  • Введение
    • О книге
    • Часто задаваемые вопросы (FAQ)
    • Благодарности
  • Ресурсы для обучения по книге
  • I. Основы Python
    • 1. Подготовка к работе
      • Подготовка рабочего окружения
      • ОС и редактор
      • Система управления пакетами pip
      • Виртуальные окружения
      • Интерпретатор Python
      • Дополнительные материалы
      • Задания
    • 2. Использование Git и GitHub
      • Основы Git
      • Отображение статуса репозитория в приглашении
      • Работа с Git
      • Дополнительные возможности
      • Аутентификация на GitHub
      • Работа со своим репозиторием заданий
      • Работа с репозиторием заданий и примеров
      • Дополнительные материалы
      • Задания
    • 3. Начало работы с Python
      • Синтаксис Python
      • Интерпретатор Python. IPython
      • Специальные команды ipython
      • Переменные
      • Задания
    • 4. Типы данных в Python
      • Числа
      • Строки (Strings)
        • Полезные методы для работы со строками
        • Форматирование строк
        • Объединение литералов строк
      • Список (List)
        • Полезные методы для работы со списками
      • Словарь (Dictionary)
        • Полезные методы для работы со словарями
        • Варианты создания словаря
      • Кортеж (Tuple)
      • Множество (Set)
        • Полезные методы для работы с множествами
        • Операции с множествами
        • Варианты создания множества
      • Булевы значения
      • Преобразование типов
      • Проверка типов
      • Вызов методов цепочкой
      • Основы сортировки данных
      • Дополнительные материалы
      • Задания
    • 5. Создание базовых скриптов
      • Исполняемый файл
      • Передача аргументов скрипту (argv)
      • Ввод информации пользователем
      • Задания
    • 6. Контроль хода программы
      • if/elif/else
      • for
        • Вложенные for
        • Совмещение for и if
      • while
      • break, continue, pass
      • for/else, while/else
      • Работа с исключениями try/except/else/finally
      • Дополнительные материалы
      • Задания
    • 7. Работа с файлами
      • Открытие файлов
      • Чтение файлов
      • Запись файлов
      • Закрытие файлов
      • Конструкция with
      • Примеры работы с файлами
      • Дополнительные материалы
      • Задания
    • 8. Полезные возможности и инструменты
      • Форматирование строк с помощью f-строк
      • Распаковка переменных
      • List, dict, set comprehensions
      • Отладка кода
      • Дополнительные материалы
  • II. Повторное использование кода
    • 9. Функции
      • Создание функций
      • Пространства имен. Области видимости
      • Параметры и аргументы функций
        • Типы параметров функции
        • Типы аргументов функции
        • Аргументы переменной длины
        • Распаковка аргументов
        • Пример использования ключевых аргументов переменной длины и распаковки аргументов
      • Аргументы, которые можно передавать только как ключевые
      • Распространенные проблемы/нюансы работы с функциями
      • Дополнительные материалы
      • Задания
    • 10. Полезные функции
      • Функция print
      • Функция range
      • Функция sorted
      • enumerate
      • Функция zip
      • Функция all
      • Функция any
      • Анонимная функция (лямбда-выражение)
      • Функция map
      • Функция filter
    • 11. Модули
      • Импорт модуля
      • Создание своих модулей
      • if __name__ == "__main__"
      • Пути поиска модулей
      • Рекомендации по поводу расположения функций в коде
      • Задания
    • 12. Полезные модули
      • Модуль subprocess
      • Модуль os
      • Модуль ipaddress
      • Модуль tabulate
      • Модуль pprint
      • Дополнительные материалы
      • Задания
    • 13. Итераторы, итерируемые объекты и генераторы
      • Итерируемый объект
      • Итераторы
      • Генератор (generator)
      • Дополнительные материалы
  • III. Регулярные выражения
    • 14. Синтаксис регулярных выражений
      • Синтаксис регулярных выражений
      • Наборы символов
      • Символы повторения
      • Специальные символы
      • Жадность символов повторения
      • Группировка выражений
      • Разбор вывода команды show ip dhcp snooping с помощью именованных групп
      • Группа без захвата
      • Повторение захваченного результата
      • Дополнительные материалы
    • 15. Модуль re
      • Объект Match
      • Функция search
      • Функция match
      • Функция finditer
      • Функция findall
      • Функция compile
      • Флаги
      • Функция re.split
      • Функция re.sub
      • Дополнительные материалы
      • Задания
  • IV. Запись и передача данных
    • 16. Unicode
      • Стандарт Юникод
      • Юникод в Python 3
      • Конвертация между байтами и строками
      • Примеры конвертации между байтами и строками
      • Ошибки при конвертации
      • Дополнительные материалы
    • 17. Работа с файлами в формате CSV, JSON, YAML
      • Работа с файлами в формате CSV
      • Работа с файлами в формате JSON
      • Работа с файлами в формате YAML
      • Дополнительные материалы
      • Задания
  • V. Работа с сетевым оборудованием
    • 18. Подключение к оборудованию
      • Ввод пароля
      • Модуль pexpect
      • Модуль telnetlib
      • Модуль paramiko
      • Модуль netmiko
      • Модуль scrapli
      • Дополнительные материалы
      • Задания
    • 19. Одновременное подключение к нескольким устройствам
      • Измерение времени выполнения скрипта
      • Процессы и потоки в Python (CPython)
      • Количество потоков
      • Потоковая безопасность
      • Модуль logging
      • Модуль concurrent.futures
        • Метод map
        • Метод submit и работа с futures
      • Дополнительные материалы
      • Задания
    • 20. Шаблоны конфигураций с Jinja2
      • Начало работы с Jinja2
      • Пример использования Jinja
      • Синтаксис шаблонов Jinja2
        • Контроль символов whitespace
        • Переменные
        • Цикл for
        • if/elif/else
        • Фильтры
        • Тесты
        • set
        • include
      • Наследование шаблонов
      • Дополнительные материалы
      • Задания
    • 21. Обработка вывода команд TextFSM
      • Начало работы с TextFSM
      • Синтаксис шаблонов TextFSM
      • Правила состояний
      • Примеры использования TextFSM
      • TextFSM CLI Table
      • Дополнительные материалы
      • Задания
  • VI. Основы объектно-ориентированного программирования
    • 22. Основы ООП
      • Основы ООП
      • Создание класса
      • Создание метода
      • Параметр self
      • Метод __init__
      • Пример класса
      • Область видимости
      • Переменные класса
      • Задания
    • 23. Специальные методы
      • Подчеркивание в именах
      • Методы __str__, __repr__
      • Поддержка арифметических операторов
      • Протоколы
        • Протокол итерации
        • Протокол последовательности
        • Менеджер контекста
      • Дополнительные материалы
      • Задания
    • 24. Наследование
      • Основы наследования
      • Задания
  • VII. Работа с базами данных
    • 25. Работа с базами данных
      • SQL
      • SQLite
      • Основы SQL (в sqlite3 CLI)
        • CREATE
        • DROP
        • INSERT
        • SELECT
        • WHERE
        • ALTER
        • UPDATE
        • REPLACE
        • DELETE
        • ORDER BY
        • AND
        • OR
        • IN
        • NOT
      • Модуль sqlite3
        • Выполнение команд SQL
        • Получение результатов запроса
        • Cursor как итератор
        • Использование модуля sqlite3 без явного создания курсора
        • Обработка исключений
        • Connection как менеджер контекста
        • Пример использования SQLite
      • Дополнительные материалы
      • Задания
  • VIII. Дополнительная информация
    • Модуль argparse
    • Форматирование строк с оператором %
    • Соглашение об именах
    • Подчеркивание в именах
    • Отличия Python 2.7 и Python 3.6
    • Проверка заданий с помощью утилиты pyneng
    • Проверка заданий с помощью pytest
      • Основы pytest
      • Особенности использования pytest для проверки заданий
      • pytest-clarity
  • Продолжение обучения
  • Скачать PDF/Epub

Ресурсы

  • Задания, примеры кода
  • Задать вопрос
  • Лекции по Python для сетевых инженеров
  v: latest
Versions
latest
Downloads
pdf
epub
On Read the Docs
Project Home
Builds
Back to top

Дополнительные материалы#

Документация:

  • pexpect

  • telnetlib

  • paramiko Client

  • paramiko Channel

  • netmiko

  • scrapli

  • scrapli-cfg

  • time

  • datetime

  • getpass

Статьи:

  • Netmiko Library

  • Automate SSH connections with netmiko

  • Network Automation Using Python: BGP Configuration

  • A Tale of Five Python SSH Libraries Commentary

Примеры кода:

  • netmiko

  • scrapli

  • netmiko, paramiko, telnetlib, scrapli, pexpect

Next
Задания
Previous
Модуль scrapli
Copyright © 2015-2022, Natasha Samoylenko
Made with Sphinx and @pradyunsg's Furo
Last updated on февр. 06, 2023