TGINSIGHT CHAT
Python Academy
@python_academy
EducaciónPython Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu
Posts recientes
Etiqueta: #python · 330 posts
Хеширование в Python используя hashlib Библиотека hashlib предоставляет алгоритмы хеширования, которые позволяют создавать уникальные хеш-суммы для данных. Это полезно для проверки целостности файлов, хранения паролей в безопасной форме и других задач безопасности данных. Пример кода: import hashlib # Пример хеширования строки с использованием SHA-256 data_to_hash = "Hello, World!" hashed_data = hashlib.sha256(data_to_hash.encode()).hexdigest() print(f"Исходные данные: {data_to_hash}") print(f"Хеш-сумма (SHA-256): {hashed_data}") В этом примере мы используем алгоритм SHA-256 из библиотеки hashlib для создания хеш-суммы строки "Hello, World!". Результат выводится в шестнадцатеричном формате. Библиотека hashlib является одним из лучших инструментов для обеспечения безопасности данных в Python. Путем использования различных алгоритмов хеширования, таких как MD5, SHA-256 и других, вы можете обеспечить целостность данных и повысить уровень безопасности ваших приложений. #python#hashlib
dict.get() dict.get() — это метод словаря, который используется для получения значения по заданному ключу. Однако, в отличие от обращения к элементу словаря с использованием квадратных скобок (dict[key]), метод get() предоставляет дополнительную возможность задать значение по умолчанию, которое будет возвращено, если ключ не найден в словаре. Синтаксис метода get() выглядит так: value = dict.get(key, default) key: Ключ, по которому производится поиск в словаре. default (необязательный): Значение, которое будет возвращено, если ключ не найден в словаре. Если default не указан, и ключ не найден, метод вернет None. #python
Hashtags
PyOxidizer PyOxidizer — это инструмент, позволяющий упаковать Python-проект в единый исполняемый файл, включающий интерпретатор Python, все необходимые библиотеки и ресурсы. Это позволяет запускать ваши приложения без необходимости предварительной установки Python или каких-либо зависимостей. #python
Hashtags
Управление базой данных в Python с Alembic и SQLAlchemy Сегодня мы поговорим о том, как можно эффективно управлять структурой вашей базы данных в Python с использованием библиотек Alembic и SQLAlchemy. Эта связка инструментов позволяет легко мигрировать схему базы данных, управлять версиями и обеспечивает удобный способ разработки и поддержки приложений. Что такое Alembic и SQLAlchemy? SQLAlchemy - это мощная библиотека для работы с базами данных в Python. Она предоставляет ORM (Object-Relational Mapping), что делает работу с базой данных более Pythonic. Вы можете определять модели данных, выполнять запросы и манипулировать данными, используя чистый Python. Alembic - это инструмент для управления миграциями базы данных. Он позволяет создавать и применять миграции для изменения структуры базы данных, такие как создание таблиц, добавление столбцов или изменение индексов. Пример использования Alembic и SQLAlchemy: 1. Установка библиотек: pip install sqlalchemy alembic 2. Инициализация Alembic: alembic init my_migration 3. Определение моделей данных в SQLAlchemy: from sqlalchemy import create_engine, Column, Integer, String from sqlalchemy.ext.declarative import declarative_base Base = declarative_base() class User(Base): __tablename__ = 'users' id = Column(Integer, primary_key=True) name = Column(String) 4. Создание миграции: alembic revision --autogenerate -m "Create user table" 5. Применение миграции: alembic upgrade head Теперь вы можете легко управлять структурой базы данных, создавать новые миграции и применять их, чтобы обновить вашу базу данных. Полезные ссылки: - SQLAlchemy: https://www.sqlalchemy.org/ - Alembic: https://alembic.sqlalchemy.org/ #python#sqlalchemy#alembic#базаданных#миграции
Работа с форматированием текста textwrap — это стандартная библиотека, которая спользуется для форматирования текста в тех случаях, когда нам нужна красивая печать. Он предлагает функциональность аналогичную текстовым редакторам и текстовым процессорам. Немного о возможностях: textwrap.fill() — принимает текст и возвращает отформатированный текст, первая строка сохраняет свой отступ, а пробелы в начале каждой последующей строки вставляются в абзац. textwrap.dedent() — используется для удаления общего префикса пробела из всех строк в тексте. textwrap.indent() — используется для добавления текст префикса ко всем строкам в параграфе #python#textwrap
Зачем использовать pdb pdb — это интерактивныйотладчикPython, который позволяет пользователю управлятьвыполнениемпрограммы: перемещаться по коду, просматривать и изменять значения переменных, пошагово проходить через код, включая вложенные структуры, устанавливать точкиостановок и выполнять другие типичные действия для отладки. Этот модуль обладает интерфейсом командной строки, с помощью которого можноуправлять выполнением кода на Python в реальномвремени. Чтобы активировать режим pdb в вашей программе, достаточно добавить следующую строку кода. #python#pdb
Обработка видео с помощью MoviePy MoviePy - это удобный пакет для выполнения различных задач по редактированиювидео, включая обрезку и склейкуклипов, добавление видеоэффектов и редактирование аудиодорожки. Пакет достаточно прост в освоении, и базовые принципы его использования можно увидеть на примере. В данном случае, мы открываем два видеофайла, соединяем их водин, обрезаем получившийся клип, уменьшаем громкость звука и сохраняем итоговый результат. Стоит учитывать, что обработка видео, особенно больших файлов, может занять значительноевремя. MoviePy особенно полезен, когда необходимо автоматизировать обработку большого количества видео по единомуалгоритму. #python#moviepy
Функция math.perm() math.perm() используется для определения количества возможных способов выбора и расположения m элементов из набора n элементов. Этот метод включен в модуль math. Он требует указания двух параметров: n — общеечисло элементов в наборе, и m — число элементов в каждойвозможнойвыборке. Результатом выполнения функции является целочисленное значение, представляющее число таких перестановок. Если n меньше m, функция возвратит 0. Пример использования: расчет количества перестановок трех элементов изпяти. Это демонстрирует, сколько существует вариантов формирования трехэлементных подмножеств изпятерки. #python
Hashtags
Метод setdefault() Метод setdefault() в Python возвращает значение по указанному ключу из словаря. Если ключ отсутствует в словаре, метод добавляет ключ в словарь со значением по умолчанию, а затем возвращает это значение. Метод setdefault() имеет два параметра: — Ключ, по которому необходимо получить значение. — Значение по умолчанию, которое будет добавлено в словарь, если ключ отсутствует. Если ключ присутствует в словаре, метод возвращает значение, связанное с этим ключом. Если ключ отсутствует в словаре, метод добавляет ключ в словарь со значением по умолчанию, а затем возвращает это значение. #python
Hashtags
Автоматизируем браузер с Pyppeteer Pyppeteer — это Python-библиотека, позволяющая управлятьбраузером с помощью инструмента Puppeteer, изначально разработанного для Node.js. Puppeteer предоставляет возможность автоматизироватьвзаимодействие с веб-страницами, выполнятьсценарии на основе браузера, делатьскриншоты, создаватьPDF-файлы и многоедругое. Пример использования Pyppeteer для выполнения поиска в Google и сохранения результатов в виде скриншота доступен на фото. #python#pyppeteer
Hashtags
pow() В Python функция pow() используется для вычисления степени числа. Вот как она работает: result = pow(x, y, z) где: x — основание степени, y — показатель степени, z (необязательный параметр) — модуль, по которому производится вычисление. Если z указан, то pow(x, y, z) возвращает (x y) % z. Если z не указан, то возвращается x y. #python
Hashtags
Управление лимитом рекурсии в Python В Python отсутствует оптимизация хвостовой рекурсии, что часто приводит к ошибке RecursionError при разработке рекурсивных алгоритмов. Однако, используя модуль sys, можно узнать и даже изменить максимально допустимую глубину рекурсии. Несмотря на это, следует быть осторожным с увеличением лимита, так как каждый вызов рекурсии потребляет значительное количество памяти. В большинстве случаев предпочтительнее использовать итеративные подходы, такие как циклы, вместо рекурсии. #python#recursion
Hashtags