Just Python
10.2K subscribers
4.39K photos
11 videos
4.38K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Композиция классов

Композиция классов — это концепция, при которой один класс включает в себя объект(ы) другого класса в качестве атрибута. Это отличается от наследования, где класс наследует атрибуты и методы другого класса. Композиция обычно предпочтительна в сравнении с наследованием, так как она обеспечивает более гибкую структуру.

Композиция обычно предпочтительна, когда отношение между двумя классами является «имеет» или «включает», а не «является». Она делает код более гибким, позволяя изменять поведение объекта, не изменяя его класс напрямую.

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

#theory // Just Python
Библиотека Manim

Библиотека Manim (Mathematical Animation Engine) предоставляет инструменты для создания анимаций математических концепций с использованием Python. Эта библиотека широко используется в образовательных целях и в сообществе, занимающемся созданием математических контентов. Manim была изначально разработана Grant'ом Sanderson'ом, создателем 3Blue1Brown, для создания анимаций для его образовательных видеороликов.

Помимо этого, существует две версии Manim: Manim Community Edition (ManimCE) и Manim GL. ManimCE является развитием и поддерживается сообществом. Manim GL, с другой стороны, предоставляет улучшенные возможности OpenGL для более высокого качества анимаций.

После установки вы можете использовать команды вроде manim your_script.py YourSceneName -p -ql, чтобы создать видео на основе вашего скрипта.

Однако, учтите, что состояние инструментов и их документации может измениться, поэтому рекомендуется посетить официальный репозиторий Manim на GitHub для получения последней информации: Manim Community Edition.

#theory // Just Python
Объединение функцией zip()

Функция zip() используется для объединения элементов из двух или более итерируемых объектов в кортежи. Эти кортежи могут затем быть использованы, например, для создания словарей или других структур данных. Функция zip() создает итератор, который генерирует кортежи из элементов, взятых по одному из каждого переданного ей итерируемого объекта.

Важно отметить, что если переданные итерируемые объекты имеют разную длину, zip() остановится, когда самый короткий из них исчерпается.

#theory // Just Python
Как работает хэш-таблица?

Хэш-таблица в Python реализована в виде словаря (dict). Вот как это работает:

— Хэширование ключей: Когда вы добавляете пару ключ-значение в словарь, Python сначала вычисляет хэш-код ключа с помощью встроенной функции hash(). Хэш-код - это целое число, представляющее "отпечаток" ключа.

— Разрешение коллизий: Если два разных ключа имеют одинаковый хэш-код (коллизия), Python использует механизм разрешения коллизий для размещения значений в памяти. Одним из наиболее распространенных методов разрешения коллизий является метод цепочек, когда для каждого "ячейки" хэш-таблицы выделен список, в который добавляются все значения с одинаковыми хэш-кодами.

— Поиск значения: При поиске значения по ключу Python сначала вычисляет хэш-код ключа и затем использует его для определения соответствующей "ячейки" в хэш-таблице. Затем происходит поиск значения внутри этой "ячейки" (или цепочки).

#theory // Just Python
Библиотека для трансляции текста

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

Для использования библиотеки transliterate сначала нужно установить её с помощью pip:

pip install transliterate


Библиотека transliterate поддерживает несколько письменностей, так что вы можете использовать её для транслитерации текста между различными языками.

#theory // Just Python
👩‍💻 Программирование — В С Ё

В 2024 году на кодинге уже не вывезешь, перспектива года - Информационная Безопасность.

Ловите полезные каналы, которые помогут ворваться в новое направление.

👍 ZeroDay - Уроки, эксплуатация уязвимостей с нуля
👍 Белый Хакер - Свежие новости из мира ИБ
😎 Арсенал Безопасника - Все необходимые инструменты
😎 Бункер Хакера - Статьи, книги, шпаргалки и хакинг
👨‍💻 Серверная Админа - Настройка и уроки по компьютерным сетям

📂Вступай и изучай новое направление!
Please open Telegram to view this post
VIEW IN TELEGRAM
Библиотека для квантовых вычислительных

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

Вы можете изучить документацию Qiskit для получения более подробной информации и примеров использования.

#theory // Just Python
Узнаём ip адрес своего компьютера

Этот код использует библиотеку requests для отправки HTTP-запроса к веб-сервису ipify, который предоставляет API для определения публичного IP-адреса пользователя. Код написан в форме функции get_public_ip, что делает его удобным для повторного использования.

Использование блока try-except обеспечивает обработку исключений, которые могут возникнуть при запросе (например, проблемы с подключением к интернету). Если запрос успешен, функция возвращает IP-адрес, иначе возвращает сообщение об ошибке.

#theory // Just Python
JPype

JPype - это модуль, который позволяет взаимодействовать с кодом на Java из Python.

Основные области применения JPype:
- Доступ к библиотекам Java из Python.
- Интеграция с существующим Java кодом.
- Использование JVM из Python.

В этом примере мы импортируем класс String из Java и создаем экземпляр этого класса.
Затем вызываем метод toUpperCase() у объекта javaString. Таким образом из Python мы можем работать с объектами и вызывать методы Java.
Результат работы программы:
HELLO FROM JAVA!

#theory // Just Python
Модульное программирование

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

#theory // Just Python
Pyro4

Pyro4 — это библиотека Python для удаленного вызова процедур (RPC). Она позволяет создавать удаленные объекты, которые можно вызывать из других процессов или компьютеров.

Чтобы использовать Pyro4, необходимо сначала установить библиотеку. Это можно сделать с помощью менеджера пакетов pip:

pip install Pyro4


После установки библиотеки можно начать создавать удаленные объекты. Для этого необходимо создать класс, который будет представлять удаленный объект. Этот класс должен наследоваться от класса Pyro4.Proxy.

#theory // Just Python
Xarray

Xarray — это библиотека Python для анализа и визуализации многомерных данных. Она расширяет возможности массивов NumPy, обеспечивая множество оптимизированных операций с данными.

Xarray похож на Pandas, но ориентирован не на табличные данные, а на N-мерные массивы данных

#theory // Just Python
PyQt6

PyQt6 — это библиотека Python для создания приложений с графическим интерфейсом (GUI) с помощью инструментария Qt. Qt - это мощный и зрелый инструментарий для разработки GUI, который используется в широком спектре приложений, от настольных приложений до мобильных приложений и веб-приложений. PyQt6 позволяет использовать все возможности Qt в Python.

Чтобы начать работу с PyQt6, необходимо установить библиотеку. Для этого можно использовать менеджер пакетов, такой как pip:

pip install PyQt6

После установки библиотеки можно начать писать код для создания приложения с GUI.

#theory // Just Python
PyGObject

PyGObject — это набор Python-привязок для библиотеки GObject, которая является основой для создания кроссплатформенных приложений на GTK+ для Windows, macOS и Linux.

PyGObject доступен в большинстве дистрибутивов Linux и macOS. В Windows его можно установить с помощью пакетного менеджера Chocolatey.

choco install pygobject


Код с картинки создаёт окно с заголовком «Привет, мир!» и выводит его на экран.

#theory // Just Python
Функция высшего порядка

Функция высшего порядка — это функция, которая принимает в качестве аргумента другую функцию и/или возвращает функцию в качестве результата.

Функции высшего порядка могут использоваться для различных целей, включая:

— Инкапсуляция многократно используемого поведения
— Создание более абстрактного кода
— Усиление выразительности кода

#theory // Just Python
Библиотека statistics

Библиотека statistics в Python предоставляет функции для выполнения математических операций и статистического анализа числовых данных. Она входит в стандартную библиотеку Python и не требует установки.

#theory // Just Python
Astropy о библиотеке

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

Astropy — это мощный инструмент, который может использоваться для выполнения широкого спектра астрономических задач. Он является отличным выбором для астрономов, которые хотят использовать язык программирования Python для своих исследований.

#theory // Just Python
Метод missing

Метод missing — это магический метод, который вызывается, когда попытка доступа к несуществующему ключу в словаре. По умолчанию метод missing бросает исключение KeyError. Однако его можно переопределить, чтобы обеспечить другое поведение.

Общая форма метода missing выглядит следующим образом:

def __missing__(self, key):
# ...


Аргумент self представляет собой экземпляр словаря, в котором произошло обращение к несуществующему ключу. Аргумент key представляет собой сам несуществующий ключ.

#theory // Just Python
Либа PySpark

PySpark — это Python API для Apache Spark. Он позволяет выполнять обработку больших данных в реальном времени в распределенной среде с помощью Python. Он также предоставляет оболочку PySpark для интерактивного анализа данных.

PySpark сочетает в себе удобство использования и простоту Python с мощностью Apache Spark, что позволяет обрабатывать и анализировать данные любого размера для всех, кто знаком с Python. PySpark поддерживает все функции Spark, такие как Spark SQL, DataFrames, Structured Streaming, Machine Learning (MLlib) и Spark Core.

Код с картинки создаст контекст Spark, прочитает набор данных из файла CSV с именем "data.csv" и выведет его в консоль.

#theory // Just Python
Атрибут context

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

В коде на картинке функция g вызывает исключение ValueError. Функция f перехватывает это исключение и вызывает собственное исключение Exception.

#theory // Just Python
Модуль doctest

Модуль doctest — это легкий фреймворк для тестирования, который позволяет автоматизировать тестирование кода, используя его документацию. Модуль ищет в документации примеры кода, которые можно выполнить, и проверяет, соответствуют ли результаты ожидаемым.

Как использовать doctest?

Чтобы использовать doctest, необходимо импортировать его в свой код:

import doctest


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

Чтобы запустить тесты doctest, вы можете использовать функцию doctest.testmod(). Если тесты пройдут успешно, ничего не будет напечатано. Если тесты потерпят неудачу, будет напечатано сообщение об ошибке, указывающее на причину неудачи.

#theory // Just Python