Добавить в корзинуПозвонить
Найти в Дзене
Николай Калюжный

Python для сетевых инженеров - Введение (I-II)

Всем привет, добро пожаловать в путешествие Python для сетевых инженеров. Я очень рад провести вас по этому захватывающему пути. Позвольте мне начать с того, что Python невероятно доступен и прост в изучении. Потратив всего несколько недель на самообучение, вы сможете понять основы. Хорошее понимание основ является самой важной частью этого путешествия, все, что вы строите сверху, будет прочнее и надежнее. Этот прочный фундамент является ключом к вашему долгосрочному успеху. Моя цель здесь - сделать все очень простым и понятным. Я верю в то, что нужно преодолеть сложность и сделать обучение доступным и приятным. Мы рассмотрим основы Python таким образом, который непосредственно применим к сетевой инженерии, показывая, как этот мощный язык может сделать вашу жизнь проще, а работу более эффективной. Наша конечная цель здесь ясна, к концу этого курса вы будете знакомы с синтаксисом Python, сможете комфортно создавать свой собственный код на Python и сможете настраивать/управлять сетевыми
Оглавление

Всем привет, добро пожаловать в путешествие Python для сетевых инженеров. Я очень рад провести вас по этому захватывающему пути. Позвольте мне начать с того, что Python невероятно доступен и прост в изучении. Потратив всего несколько недель на самообучение, вы сможете понять основы.

Хорошее понимание основ является самой важной частью этого путешествия, все, что вы строите сверху, будет прочнее и надежнее. Этот прочный фундамент является ключом к вашему долгосрочному успеху.

Моя цель здесь - сделать все очень простым и понятным. Я верю в то, что нужно преодолеть сложность и сделать обучение доступным и приятным. Мы рассмотрим основы Python таким образом, который непосредственно применим к сетевой инженерии, показывая, как этот мощный язык может сделать вашу жизнь проще, а работу более эффективной.

Наша конечная цель

Наша конечная цель здесь ясна, к концу этого курса вы будете знакомы с синтаксисом Python, сможете комфортно создавать свой собственный код на Python и сможете настраивать/управлять сетевыми устройствами, а также автоматизировать небольшие ручные задачи.

Я стремлюсь научить вас навыкам, необходимым не только для понимания Python с теоретической точки зрения, но и для практического применения его в ваших повседневных сетевых задачах. Будь то автоматизация повторяющихся задач, управление конфигурациями устройств или просто повышение эффективности рабочего процесса, этот курс создан для того, чтобы помочь вам в этом.

Что мы узнаем?

В этом курсе мы рассмотрим всё, что вам нужно для начала работы с Python. Мы начнем с того, что покажем вам, как установить Python на ваш компьютер. Затем мы погрузимся в запуск вашей первой программы «Hello World!» — традиционного способа начать свое путешествие по программированию.

После этого мы изучим основы программирования на Python, включая переменные, типы данных, операторы, циклы и функции. Это строительные блоки любой программы на Python, и их понимание имеет решающее значение для вашего успеха.

Мы также познакомим вас с Netmiko, мощным модулем Python, специально разработанным для управления сетевыми устройствами. К концу этого курса вы не только освоите синтаксис Python, но и сможете использовать Netmiko для автоматизации задач и управления сетевыми конфигурациями.

  • Установка Python на ваш компьютер
  • Запуск вашей первой программы «Hello World!»
  • Переменные - Понимание и использование переменных
  • Типы данных:Строки
    Целых чисел
    Поплавки
    Списках
    Кортежей
    Словари
    Булевы
  • Выражения и операторы:Арифметические операторы
    Операторы сравнения
    Логические операторы
  • Петли:Циклы для
    Циклы While
  • Функции - Определение и вызов функций
  • Импорт модулей
  • ЗЕРНЫШКО
  • Netmiko - Использование Netmiko для управления сетевыми устройствами
-2

Мы также коснемся

  • Практические примеры и тематические исследования - Мы рассмотрим реальные примеры и продемонстрируем, как Python можно использовать для решения распространенных сетевых проблем и автоматизации ручных задач. Эти примеры помогут вам увидеть практическую ценность того, что вы изучаете.
  • Введение в API - Вы узнаете, как использовать Python для взаимодействия с API сетевых устройств, такими как REST API.
  • Контроль версий с помощью Git - Введение в основы управления версиями поможет вам управлять и отслеживать изменения в коде.
  • Будущая траектория обучения - Наконец, мы предложим пути для дальнейшего обучения.

Почему Python?

Прежде чем погрузиться в изучение Python, полезно понять, почему он стал таким важным навыком, особенно в области информационных технологий и сетей.

Для сетевых инженеров переход к сетевой автоматизации подчеркивает ценность Python. Возможность автоматизировать повторяющиеся задачи, программно настраивать устройства и более эффективно управлять сетевыми операциями — вот лишь несколько причин, по которым Python становится незаменимым. Благодаря богатой экосистеме модулей, таких как Netmiko, Nornir, Scrapli и Napalm, Python предоставляет инструменты, необходимые для надежных решений по автоматизации сети. Кроме того, многие поставщики поддерживают Python через свои SDK, такие как panos-python для Palo Alto Networks и PyEZ для Juniper's Junos, упрощая интеграцию Python в различные сетевые среды.

Эта широкая поддержка и стремление к автоматизации делают Python идеальным выбором для новичков, которые хотят оказать влияние на мир ИТ и сетей. Изучение Python не только открывает двери для автоматизации рутинных задач, но и прокладывает путь к инновационным решениям сложных сетевых проблем.

Дорожная карта обучения

Изучение Python варьируется от человека к человеку, поэтому нет строгого пути, по которому можно было бы следовать. Мой совет? Не торопитесь и убедитесь, что вы действительно понимаете каждую часть, прежде чем двигаться дальше. Не пропускайте то, что кажется вам сложным, так как это только усложнит дальнейшее обучение. Ключ к успеху — это практика: пишите код, пробуйте примеры и применяйте полученные знания к реальным задачам, особенно связанным с вашей работой. Этот практический опыт бесценен. И помните, что сообщество Python огромно и поддерживает вас, поэтому не стесняйтесь просить о помощи или делиться тем, что вы узнали.

Во второй части мы расскажем, как установить Python и VS Code, а затем запустить очень простую программу. Наша конечная цель здесь заключается в том, что когда мы запускаем этот код на Python, мы хотим, чтобы код был распечатан Hello World! в нашем терминале. Если вы сможете успешно это сделать, добро пожаловать в Python Club.

Установка Python

Если вы хотите установить Python, есть много полезных видео и руководств для различных операционных систем. Если вы используете Windows или Mac и вам нужны рекомендации, в Интернете есть множество хороших статей и ресурсов, которые могут помочь вам в процессе установки шаг за шагом.

Windows - https://www.digitalocean.com/community/tutorials/install-python-windows-10

Mac - https://www.digitalocean.com/community/tutorials/how-to-install-python-3-and-set-up-a-local-programming-environment-on-macos

Что касается меня, то я использую Linux, в частности Ubuntu 22-24 и Rocky Linux, поэтому я поделился тем, как вы можете установить Python на Ubuntu.

root@b70e1a198a7d:/# apt update

root@b70e1a198a7d:/# apt install python3
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
libexpat1 libmpdec3 libpython3-stdlib libpython3.11-minimal libpython3.11-stdlib
libreadline8 libsqlite3-0 media-types python3-minimal
python3.11 python3.11-minimal readline-common
Suggested packages:
running python post-rtupdate hooks for python3.11...
Processing triggers for libc-bin (2.35-0ubuntu3.6) ...
root@b70e1a198a7d:/# python3
Python 3.11 (main, Nov 20 2024, 15:14:05) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.

root@b70e1a198a7d:/# python3 --version
Python 3.11

Python против Python3

В системах Linux вы можете столкнуться с двумя разными командами терминала для запуска Python: python и python3. Это различие существует в основном из-за перехода с Python 2 на Python 3, которые несовместимы друг с другом в некоторых существенных аспектах.

  • python обычно относится к Python 2 на старых системах. В течение долгого времени Python 2 был версией Python по умолчанию, установленной во многих дистрибутивах Linux и macOS.
  • python3 явно относится к Python 3, текущей и активно разрабатываемой версии Python. Он включает в себя новые функции и улучшения по сравнению с Python 2, что делает его предпочтительным выбором для новых проектов.

Причина наличия этих двух команд заключается в том, чтобы позволить Python 2 и Python 3 сосуществовать в одной системе без конфликтов, обслуживая приложения и скрипты, которые полагаются на определенную версию. Со временем, когда Python 2 достиг конца своей жизни (окончание срока службы в январе 2020 года), python3 становится стандартной командой для вызова Python, а метод python Команда все чаще связывается с Python 3 в новых установках систем и средах.

💡

Убедитесь, что на вашем компьютере установлена последняя версия Python, в идеале Python 3.11 или 3.12, чтобы воспользоваться новейшими функциями и улучшениями безопасности. Если python --version не указывает на Python 3, попробуйте использовать python3 --version , чтобы найти его. Двигаясь вперед, используйте команду, которая указывает на Python 3.x для вашей работы. Этот небольшой шаг гарантирует, что вы используете самую последнюю и поддерживаемую версию Python, поддерживая свои проекты в актуальном состоянии и безопасности.

Visual Studio Code

Теперь, когда мы настроили Python, следующим шагом будет установка VS Code. Почему VS Code? Это мощный редактор, который не только прост в использовании, но и оснащен функциями, упрощающими написание кода, такими как выделение синтаксиса, завершение кода и инструменты отладки. По этим причинам он является фаворитом среди многих разработчиков.

После установки VS Code создайте новый каталог (или папку) в любом месте. Это будет наше рабочее пространство или папка проекта. Откройте этот каталог в VS Code, чтобы начать создавать файлы и управлять ими непосредственно из редактора.

-3

VS Code также имеет встроенный терминал, поэтому вы можете запускать команды или скрипты, не выходя из редактора. Чтобы получить к нему доступ, перейдите по ссылке Terminal > New Terminal. Это удобство означает, что вам не придется переключаться между VS Code и терминалом системы, что оптимизирует рабочий процесс.

-4

Наш первый код

Чтобы начать работу с нашей первой программой на Python, нам нужно создать файл Python. Вы можете назвать этот файл как угодно, но для нашего примера давайте назовем его my_first_script.py. Это именование помогает нам помнить, что это наш самый первый шаг в программировании на Python.

Внутри my_first_script.py, мы добавим одну строку кода.

#my_first_script.py print('Hello World!')

Когда мы запускаем этот файл (выполнив python my_first_script.py на терминале), цель состоит в том, чтобы наш терминал отображал сообщение: «Hello World!». Давайте разберемся, как это работает и что означает каждая часть линии.

  • print - Это встроенная функция Python, которая выводит информацию в терминал. Думайте об этом как о способе отправки сообщений из вашего кода на экран, чтобы вы могли видеть, что делает или думает ваша программа.
  • ('Hello World!') - Это содержимое, которое мы хотим распечатать. В Python все, что заключено в кавычки (одинарное ' или двухместный " кавычки) считается строкой, которая представляет собой тип данных, представляющих текст.
  • Вся линейка print('Hello World!') - Когда Python выполняет эту строку, он вызывает метод print и передает 'Hello World!" в качестве аргумента. Затем функция выполняет свою работу, отображая «Hello World!» в вашем терминале.
-5

Выполняя эту простую строку кода, вы указываете Python выполнить команду, которая выводит сообщение. Это основополагающее понятие в программировании, использование функций для выполнения задач, и в данном случае задачей является вывод сообщения.

Чтобы выполнить эту команду, просто откройте терминал в VS Code и введите python my_first_script.py как показано на скриншоте. Вот как вы заставите свой скрипт Python работать и посмотрите, что он делает. Запуск скрипта из терминала VS Code прост и хранит все в одном месте. Когда вы видите на экране надпись «Hello World!», это означает, что вы сделали свой первый шаг в программировании на Python, показывая, что вы успешно написали и запустили свой первый скрипт на Python.

Множественная печать операторов

Еще одна полезная вещь, которую нужно знать о print Функция заключается в том, что вы можете использовать его несколько раз для отображения различных фрагментов информации в отдельных строках. Это очень удобно, когда вы хотите поделиться несколькими сообщениями или фрагментами данных друг за другом. Например, если вы хотите распечатать приветствие, а затем задать вопрос, вы можете написать.

print('Hello World!') print('How are you today?')

#output Hello World!
How are you today?

Каждый print Оператор работает независимо, поэтому каждое сообщение отображается в отдельной строке. Таким образом, вы можете организовать свой вывод так, чтобы он был понятным и удобным для чтения.

Не стесняйтесь попробовать добавить больше print в ваш сценарий, чтобы увидеть, как они работают вместе. Это отличный способ освоиться с написанием и выполнением кода на Python.

Несколько советов

В этой части курса основное внимание уделяется программе «Hello World!» и print функции, есть еще одна вещь, которая может быть вам полезна. Тем print function — один из самых простых, но мощных инструментов в Python. Это не только для того, чтобы сказать «Привет, мир!». — с его помощью можно отображать любую информацию, от сообщений об ошибках до результатов сложных расчетов.

Вот что вы должны помнить.

  • Вы можете напечатать несколько элементов одновременно, разделив их запятыми. Например print("The answer is", 42) бы на выходе, The answer is 42.
  • Вы также можете использовать команду print для отображения значений переменных. Если у вас есть переменная a со значением 10, записывая print(a) покажет 10 на вашем экране. (Об этом мы подробно расскажем позже)

Упражнение - Персональная программа приветствия

Цель- Напишите скрипт на Python, который запрашивает имя пользователя и печатает персонализированное приветствие.

Получите имя пользователя - Во-первых, ваш скрипт должен запрашивать имя пользователя. Вы можете добиться этого, используя команду input функционируют так.

name = input('What is your name? ')

Эта строка кода отобразит сообщение What is your name? и подождите, пока пользователь введет свое имя и нажмет Enter. Все, что он введет, будет сохранено в переменной name.

Распечатайте персонализированное поздравление - Затем используйте команду print для отображения персонализированного приветствия с использованием введенного пользователем имени. Попробуйте использовать f-строку, чтобы включить переменную в ваше сообщение, вот так.

print(f'Hello, {name}! Welcome to the Python Club.')

Ожидаемый результат - Программа должна запросить имя пользователя, а затем поприветствовать его по имени. Например, если пользователь вводит «Алекс», вывод должен быть таким.

What is your name? Alex
Hello, Alex! Welcome to the Python Club.

💡

В этой части курса мы представили две новые вещи: input function и f-strings. Если вы не поняли их сразу, не волнуйтесь. Мы рассмотрим их более подробно позже в этом курсе.

F-строки, появившиеся в Python 3.6, предлагают более удобочитаемый и лаконичный способ форматирования строк. Они называются «f-строками», потому что вы добавляете к строке префикс «f» перед открывающей кавычкой. Это указывает Python рассматривать строку как f-строку и вычислять любые выражения в фигурных скобках {} прямо.

{name} Внутри f-строки находится заполнитель, который заменяется значением переменной name. Когда Python выполняет этот код, он вычисляет выражение внутри фигурных скобок и вставляет результат в строку. Итак, если name есть "Alex", на выходе получится: "Hello, Alice! Welcome to the Python Club."