Python Learning
34.6K subscribers
1.91K photos
8 videos
7 files
913 links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://yangx.top/+I7jrAQKR5xAyYTAy

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Python_per_month
加入频道
⚙️ sys.intern()

В Python функция sys.intern() оптимизирует хранение строк, создавая их в единственном экземпляре в памяти (интернирование). Это ускоряет сравнение строк за счёт сравнения ссылок, а не их содержимого.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ zip()

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

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ Интересный факт о языке: Множественное присваивание

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

Как это работает:

Справа от знака = создаётся кортеж значений.
Эти значения распаковываются и присваиваются переменным слева.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🌐Хотите создать веб-приложение, но не знаете, с чего начать?

📖На открытом уроке «Создание веб-приложения на Django за 1 час» вы сделаете первый шаг в мире веб-разработки. Мы начнём с идеи и за час создадим работающий проект.

⚙️Настроим окружение, создадим модель данных, разберёмся с админ-панелью и выведем результат на экран. Вы увидите, что программирование на Python — это просто, если за дело берутся профессионалы!

👉Присоединяйтесь 25 декабря в 20:00 мск и получите скидку🥳 на участие в большом курсе «Python Developer. Basic»: https://clck.ru/3FMMQR

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ inspect.getsource()

Метод inspect.getsource() из модуля inspect позволяет получить исходный код функции, класса или метода. Это полезно для анализа кода во время выполнения или создания инструментов для отладки и документации.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ sys.getsizeof()

Метод sys.getsizeof() позволяет узнать размер объекта в памяти, включая дополнительные данные, связанные с этим объектом. Это полезно для анализа потребления памяти в приложении.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
Вы когда-нибудь хотели стать лучшей версией себя?
Применять SQLAlchemy эффективнее — быстрее, лучше, умнее!

23 декабря, 20:00 мск — открытый урок для Python-разработчиков.

📒Что делать, если методы, использующие SQLAlchemy и СУБД, тормозят? Когда оптимизация внутри SQLAlchemy — благо, а когда — беда? Как создать удобную панель администрирования поверх SQLAlchemy?

Спикер Дмитрий Панкрашов — ведущий разработчик в компании-партнере вендора СЭД «Директум».

🟢Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/SrB3/

Все участники открытого урока получат скидку на курс "Python Developer. Professional"

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ ast.literal_eval()

Метод ast.literal_eval() из модуля ast безопасно вычисляет выражения Python из строки. Это полезно для обработки данных из текстовых файлов или ввода, где требуется парсинг структур данных, таких как списки, словари или числа.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Улучшение работы со строками

Конкатенация строк через + в цикле создаёт множество временных объектов, что замедляет выполнение программы. Вместо этого используйте join().

Проблема: При конкатенации строк через + создаётся новый объект строки на каждом шаге.

✔️ Решение: Используйте str.join(), который работает быстрее, так как заранее выделяет память для итоговой строки.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ weakref.ref()

weakref.ref() из модуля weakref создаёт слабую ссылку на объект. Слабая ссылка не увеличивает счётчик ссылок объекта, позволяя ему быть удалённым сборщиком мусора, если больше нет сильных ссылок на него.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ memoryview()

memoryview() — это встроенный метод Python, который позволяет работать с буфером данных без их копирования. Это полезно для работы с большими массивами данных, таких как байты или массивы, где важна производительность.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Вопросы_с_собеседования
Как проверить файл .py на синтаксические ошибки, не запуская его?

Утилита py_compile, позволит проверить файл .py на наличие синтаксических ошибок без его запуска.

Используется py_compile очевидно:
1. открываем командную строку/терминал.
2. переходим в каталог, содержащий файл .py, который вы хотите проверить
3. выполняем: python -m py_compile yourfile.py где yourfile.py - это имя файла, который вы хотите проверить.

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

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

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как это работает? — Рекурсия на примере факториала

Рекурсия — это техника, при которой функция вызывает саму себя. Функция факториала — классический пример использования рекурсии. Давайте разберём, как это работает.

➡️ Как это работает:

Если n == 0, функция возвращает 1 (базовый случай).
В остальных случаях функция вызывает саму себя с аргументом n - 1.
Результаты этих вызовов умножаются на текущее значение n.

Развернутый аналог:
def factorial_iterative(n):
result = 1
for i in range(1, n + 1):
result *= i
return result


Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ tempfile.NamedTemporaryFile()

Метод tempfile.NamedTemporaryFile() из модуля tempfile создаёт временный файл, который автоматически удаляется при закрытии. Это удобно для временного хранения данных.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ abc.ABCMeta

Класс abc.ABCMeta из модуля abc используется для создания абстрактных базовых классов (Abstract Base Classes). Это позволяет определить методы, которые должны быть реализованы в подклассах, и предотвращает создание экземпляров базового класса.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM