Разъяснивший Python – Telegram
Разъяснивший Python
7.7K subscribers
2.79K photos
40 videos
30 files
2.67K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

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

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Необычные приёмы нарезки списков на Python

Получение части элементов из списка является распространённым требованием. В Python оператор slice состоит из трёх компонентов.

“start”: начальный индекс (значение по умолчанию равно 0).
“end”: конечный индекс (значение по умолчанию - длина списка).
“step”: определяет размер шага при итерациях по списку (значение по умолчанию равно 1).

Разъяснивший Python
👍1
Статические методы в Python

Статические методы - это методы, которые не требуют создания экземпляра класса для вызова.
Они не имеют доступа к атрибутам и другим методам экземпляра класса и объявляются с помощью декоратора @staticmethod.

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

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

Разъяснивший Python
Используйте виртуальное окружение

Виртуальное окружение (virtual environment) — надстройка, которая обеспечивает две вещи.

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

Контроль версий. Виртуальное окружение позволит зафиксировать разновидность используемых библиотек с помощью requirements.txt или другого файла конфигурации. Код, скопированный из многолетнего треда на StackOverflow, часто выдает ошибку именно из-за этого. Если вы работаете с несколькими проектами, требующими разных версий одной и той же библиотеки, virtualenv поможет их «развести по углам».

Разъяснивший Python
👍1
Управляйте сессиями

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

Разъяснивший Python
Создание QR-кода

Данный код позволяет создать QR-код из указанной URL-ссылки.

import qrcode

# URL-ссылка, которую вы хотите закодировать в QR-код
url = "https://www.example.com"

# Создание объекта QRCode
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=10,
border=4,
)

# Добавление данных (URL) в QRCode
qr.add_data(url)
qr.make(fit=True)

# Создание изображения QR-кода
img = qr.make_image(fill_color="black", back_color="white")

# Сохранение изображения QR-кода
img.save("qrcode.png")


Предварительно вам нужно установить библиотеку qrcode.

Разъяснивший Python
👍2
Валидируйте входные данные

Стоит фильтровать пользовательский ввод на наличие определенных символов. В разработке веб-приложений это особенно важно, потому что помогает предотвратить различные атаки, такие как SQL-инъекции и межсайтовый скриптинг (XSS).

Разъяснивший Python
3
Генераторы для экономии памяти

Отрабатывают эффективнее вместо самописных итераторов и вызываются с помощью специального синтаксиса — круглых скобок и конструкции i for i in range(10000).

Разъяснивший Python
1
collections.MutableMapping

Collections.MutableMapping — это интерфейс, который представляет изменяемое отображение (словарь).
Он наследуется от интерфейса Mapping и добавляет методы для изменения отображения, такие как __setitem__, __delitem__ и clear.

Основное преимущество в использовании MutableMapping — это возможность передавать экземпляры такого класса в любое API, ожидающее словарь.
Например, во многих функциях в стандартной библиотеке есть параметры типа dict. Если создать класс, реализующий MutableMapping, его экземпляры можно будет передавать в такие функции.

Разъяснивший Python
Класс Process

Process — это класс для создания и управления отдельными процессами из модуля multiprocessing.
Создание процесса выполняется конструктором Process, передавая целевую функцию и аргументы.

При создании процессов нужно учитывать:
— Ограничения на доступ к данным между процессами.

Разъяснивший Python
👍3
%rerun

Перезапускает предыдущую ячейку. В моей практике это полезно, чтобы пересобрать, к примеру, эмоциональную окраску (позитивная / негативная) реплики пользователя на базе библиотеки dostoevsky.

Разъяснивший Python
🤡1💊1
dict.get()

dict.get() — это метод словаря, который используется для получения значения по заданному ключу. Однако, в отличие от обращения к элементу словаря с использованием квадратных скобок (dict[key]), метод get() предоставляет дополнительную возможность задать значение по умолчанию, которое будет возвращено, если ключ не найден в словаре.

Синтаксис метода get() выглядит так:

value = dict.get(key, default)

key: Ключ, по которому производится поиск в словаре.
default (необязательный): Значение, которое будет возвращено, если ключ не найден в словаре. Если default не указан, и ключ не найден, метод вернет None.

Разъяснивший Python
1
Оператор raise

Оператор raise используется для возбуждения исключения (exception). Он позволяет программистам явным образом указывать, что в программе произошла какая-то ошибка или неожиданное условие, и вызывать соответствующее исключение.

Синтаксис оператора raise выглядит следующим образом:

raise [Exception [, args [, traceback]]]

Где Exception — это тип исключения, которое вы хотите возбудить, а args и traceback — дополнительные аргументы, связанные с исключением.

Можно также использовать оператор raise без аргументов, чтобы повторно возбудить текущее исключение внутри блока except. Это может быть полезно, если вы хотите добавить дополнительную информацию к исключению или изменить его тип.

Разъяснивший Python
👍2
SymPy

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

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

Разъяснивший Python
👍1
%precision

Указывает число знаков после запятой (decimal number) для числовых объектов.

Разъяснивший Python
💩4👎1🤔1
Библиотека Astropy

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

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

Разъяснивший Python
👍1🤬1
SpeechRecognition

SpeechRecognition – это библиотека Python, которая позволяет использовать API распознавания речи от разных компаний, таких как Google, Microsoft, IBM и другие. Она также имеет возможность работать офлайн.

Разъяснивший Python
%autoawait

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

Разъяснивший Python
TurboGears

TurboGears — это фреймворк для создания веб-приложений на Python. Он состоит из набора взаимозаменяемых компонентов, упрощающих и ускоряющих разработку.

Вот некоторые ключевые особенности TurboGears:

TurboGears использует архитектурный шаблон Model-View-Controller (MVC), разделяя ваше приложение на логические блоки: модель, представление и контроллер. Это способствует более организованной и поддерживаемой разработке.
TurboGears позволяет вам выбирать нужные библиотеки и инструменты. По умолчанию он использует Pylons, SQLAlchemy, Genshi и Repoze, но вы можете заменить их на другие.

Разъяснивший Python
Web2py

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

Разъяснивший Python
👍1
Погрузитесь в мир Python с нашим бесплатным курсом!

🎓 Включено 45 уроков, 56 упражнений в тренажере и 163 проверочных теста. Узнаете, как создавать программы, работать с условиями и функциями.

Что вы освоите:
— Составление программ из нескольких модулей.
— Анализ ошибок в коде с использованием отладочной печати.

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

Начните свое обучение с бесплатного базового курса Python и вы сможете создавать несложные программы, а так же анализировать ошибки в коде!
MySQL: ORDER BY

Используй оператор ORDER BY, чтобы отсортировать результат в порядке возрастания или убывания. Ключевое слово ORDER BY по умолчанию сортирует результат по возрастанию. Чтобы отсортировать результат в порядке убывания, используй ключевое слово DESC.

Разъяснивший Python
👍3😁1