Mastering Python Network Automation: Automating Container Orchestration, Configuration, and Networking with Terraform, Calico, HAProxy, and Istio by Tim Peters
Эта книга поможет вам автоматизировать различные задачи с помощью Python и его библиотек, включая обнаружение сервисов, балансировку нагрузки, управление хранением, мониторинг производительности и скользящие обновления.
Calico и Istio - два известных инструмента для создания сетки сервисов. Вы узнаете, как их установить и настроить для управления маршрутизацией трафика, безопасностью и мониторингом.
Книга в формате pdf👇
#курсы_книги
@python_practics
Эта книга поможет вам автоматизировать различные задачи с помощью Python и его библиотек, включая обнаружение сервисов, балансировку нагрузки, управление хранением, мониторинг производительности и скользящие обновления.
Calico и Istio - два известных инструмента для создания сетки сервисов. Вы узнаете, как их установить и настроить для управления маршрутизацией трафика, безопасностью и мониторингом.
Книга в формате pdf👇
#курсы_книги
@python_practics
👍1
История развития Python
Первая концепция языка Python была придумана в 1980-х Гвидо Ван Россумом.
Изначально язык был разработан как ответ языку ABC. Среди особенностей Python в сравнении с языком ABC можно выделить то, что Python мог обрабатывать исключения и был в ориентирован на операционную систему Amoeba.
Конечно, Python, как и все языки программирования, пережил целый ряд различных версий. Python 0.9.0 впервые вышел в 1991 году. Помимо обработки ошибок, Python имел классы, списки и строки. И, что более важно, он включал лямбда-функции:
В 2000 году вышла новая версия Python — 2.0. Эта версия была своего рода «open-source»-проектом CWI. Здесь уже были генераторы списков и полноценный сборщик мусора.
Следующей версией был Python 3.0, выпущенный в 2008 году. Несмотря на то, что вторая и третья версии схожи, всё-таки различия есть. Самая очевидная разница заключается в том, как работает оператор
#статьи
Первая концепция языка Python была придумана в 1980-х Гвидо Ван Россумом.
Изначально язык был разработан как ответ языку ABC. Среди особенностей Python в сравнении с языком ABC можно выделить то, что Python мог обрабатывать исключения и был в ориентирован на операционную систему Amoeba.
Конечно, Python, как и все языки программирования, пережил целый ряд различных версий. Python 0.9.0 впервые вышел в 1991 году. Помимо обработки ошибок, Python имел классы, списки и строки. И, что более важно, он включал лямбда-функции:
map(), filter(), reduce(). В 2000 году вышла новая версия Python — 2.0. Эта версия была своего рода «open-source»-проектом CWI. Здесь уже были генераторы списков и полноценный сборщик мусора.
Следующей версией был Python 3.0, выпущенный в 2008 году. Несмотря на то, что вторая и третья версии схожи, всё-таки различия есть. Самая очевидная разница заключается в том, как работает оператор
print. Ведь в Python 3.0 на смену оператору пришла функция print().#статьи
👍3
Внимание! - Вопрос!
Можно ли передавать функцию в качестве аргумента другой функции?
Можно, функция в Питоне объект первого порядка: допускает присваивание, передачу в функцию, удаление.
#вопросы_из_собеседований
@python_practics
Можно ли передавать функцию в качестве аргумента другой функции?
@python_practics
👍4
Стандартные библиотеки python
Библиотеки — это готовые модули кода, которые используют разработчики, чтобы не писать один и тот же код несколько раз.
Стандартные библиотеки Python доступны разработчикам без дополнительной установки.
Например, библиотека math Python дает возможность выполнять самые разные математические функции:
находить целое от вещественного числа
или значение числа 𝜋
Другие стандартные библиотеки —
Первая дает инструменты для работы со случайными числами, а вторая незаменима для программ, которые оперируют временем и датами.
Чтобы использовать функционал стандартных библиотек, достаточно просто в начале программы написать
#фреймворки_библиотеки
@python_practics
Библиотеки — это готовые модули кода, которые используют разработчики, чтобы не писать один и тот же код несколько раз.
Стандартные библиотеки Python доступны разработчикам без дополнительной установки.
Например, библиотека math Python дает возможность выполнять самые разные математические функции:
находить целое от вещественного числа
(math.trunc(x))
вычислять логарифмы(math.log(x[, base])) или значение числа 𝜋
(math.pi)
Библиотека os Python необходима для работы с файловой системой компьютера и операционной системой.Другие стандартные библиотеки —
random и datetime. Первая дает инструменты для работы со случайными числами, а вторая незаменима для программ, которые оперируют временем и датами.
Чтобы использовать функционал стандартных библиотек, достаточно просто в начале программы написать
import и название библиотеки.#фреймворки_библиотеки
@python_practics
👍2
Получение срезов итераторов
Если вы попытаетесь получить срез (
Воспользовавшись методом
#полезные_сниппеты
@python_practics
Если вы попытаетесь получить срез (
slice) итератора, то столкнётесь с ошибкой TypeError, сообщающей о том, что на объект-генератор нельзя оформить подписку. Однако эта проблема поддаётся решению.Воспользовавшись методом
itertools.islice можно создать объект islice, который представляет собой итератор, выдающий нужные элементы. Однако здесь важно отметить то, что эта конструкция использует все элементы генератора вплоть до начала среза и все элементы в объекте islice.#полезные_сниппеты
@python_practics
👍3
Самый простой способ реализации возможностей менеджера контекста в Python
Здесь протокол управления контекстом реализован с использованием декоратора
#полезные_сниппеты
@python_practics
Здесь протокол управления контекстом реализован с использованием декоратора
contextmanager. Первая часть функции tag (до yield ) выполняется при входе в блок with. Затем выполняется сам этот блок, а после этого выполняется оставшаяся часть функции tag.#полезные_сниппеты
@python_practics
👏1
Внимание! - Вопрос!
Чем список отличается от кортежа?
Списки – это изменяемые последовательности, обычно используемые для хранения однотипных данных (хотя Python не запрещает хранить в них данные разных типов). Представлены классом list.
Кортежи – это неизменяемые последовательности, обычно используемые, чтобы хранить разнотипные данные. Представлены классом tuple.
#вопросы_из_собеседований
@python_practics
Чем список отличается от кортежа?
Кортежи – это неизменяемые последовательности, обычно используемые, чтобы хранить разнотипные данные. Представлены классом tuple.
@python_practics
👍11❤1
Pragmatic Python Programming: Learning Python the Smart Way by Gabor Gut
Исследуйте мир языков программирования с помощью Python.
Эта книга охватывает Python 3.10, объясняя его с помощью шести ключевых концепций. Каждая глава содержит реальный пример с практическими советами и разделом, посвященным расширенным концепциям.
Книга в формате pdf👇
#курсы_книги
@python_practics
Исследуйте мир языков программирования с помощью Python.
Эта книга охватывает Python 3.10, объясняя его с помощью шести ключевых концепций. Каждая глава содержит реальный пример с практическими советами и разделом, посвященным расширенным концепциям.
Книга в формате pdf👇
#курсы_книги
@python_practics
❤3
CherryPy
Одна из изначальных целей основателя проекта Реми Делона — сделать CherryPy максимально соответствующим принципу «pythonic style». Это позволило разработчикам использовать этот фреймворк как обычный модуль Python и не думать об особенностях веб- программирования. Они могут создавать веб-приложения практически так же, как создают любую другую объектно-ориентированную программу на Python.
CherryPy может выступать в качестве самостоятельного веб-сервера или работать под управлением другого серверного приложения.
Ключевые особенности CherryPy:
• надёжный многопоточный веб-сервер, соответствующий стандарту HTTP/1.1.;
• возможность запускать различные HTTP-серверы (например, на нескольких портах) одновременно;
• встроенные инструменты работы с сессиями, кэшированием, аутентификацией, статическим контентом;
• мощная система конфигурирования;
• встроенная поддержка профилирования и тестирования;
• поддержка Python 2.7+, 3.5+, PyPy, Jython.
#фреймворки_библиотеки
Одна из изначальных целей основателя проекта Реми Делона — сделать CherryPy максимально соответствующим принципу «pythonic style». Это позволило разработчикам использовать этот фреймворк как обычный модуль Python и не думать об особенностях веб- программирования. Они могут создавать веб-приложения практически так же, как создают любую другую объектно-ориентированную программу на Python.
CherryPy может выступать в качестве самостоятельного веб-сервера или работать под управлением другого серверного приложения.
Ключевые особенности CherryPy:
• надёжный многопоточный веб-сервер, соответствующий стандарту HTTP/1.1.;
• возможность запускать различные HTTP-серверы (например, на нескольких портах) одновременно;
• встроенные инструменты работы с сессиями, кэшированием, аутентификацией, статическим контентом;
• мощная система конфигурирования;
• встроенная поддержка профилирования и тестирования;
• поддержка Python 2.7+, 3.5+, PyPy, Jython.
#фреймворки_библиотеки
👍4❤1
Внимание! - Вопрос!
Как сравниваются последовательности?
Две последовательности равны, если они имеют одинаковый тип, равную длину и соответствующие элементы обоих последовательностей равны.
Последовательности одинаковых типов можно сравнивать. Сравнения происходят в лексикографическом порядке: последовательность меньшей длины меньше, чем последовательность большей длины, если же их длины равны, то результат сравнения равен результату сравнения первых отличающихся элементов.
#вопросы_из_собеседований
@python_practics
Как сравниваются последовательности?
Последовательности одинаковых типов можно сравнивать. Сравнения происходят в лексикографическом порядке: последовательность меньшей длины меньше, чем последовательность большей длины, если же их длины равны, то результат сравнения равен результату сравнения первых отличающихся элементов.
@python_practics
👍10
This media is not supported in your browser
VIEW IN TELEGRAM
Игра "Угадай число"
Компьютер выберет случайное число, а игроки должны будут по очереди угадывать число. При разработке используются: генератор случайных чисел, цикл while, условные конструкции if/else, переменные, целые числа и вывод на экран.
#sandbox
@python_practics
Компьютер выберет случайное число, а игроки должны будут по очереди угадывать число. При разработке используются: генератор случайных чисел, цикл while, условные конструкции if/else, переменные, целые числа и вывод на экран.
#sandbox
@python_practics
👍8