python_per_month | Unsorted

Telegram-канал python_per_month - Python Learning

28154

Обучающий канал по Python Ссылка для друга - https://t.me/+I7jrAQKR5xAyYTAy По всем вопросам @valentin_mascarov Реклама на бирже - https://telega.in/c/Python_per_month

Subscribe to a channel

Python Learning

namedtuple

namedtuple — это класс из модуля collections в Python, который позволяет создавать именованные кортежи. Именованные кортежи подобны обычным кортежам, но в них элементы доступны по именам, а не только по индексам. Это делает код более читаемым и понятным, особенно когда кортеж содержит много элементов.

Чтобы использовать namedtuple, вы должны импортировать его из модуля collections и определить свой собственный класс именованного кортежа, указав имена полей.

#для_начинающих

Читать полностью…

Python Learning

Джунам - питонистам платят мало 🙁 , как быть?

Очевидно - качать скилы и перестать быть джуном 🙂

Получить +50% к зп можно уже через несколько месяцев, если учить Python ежедневно

Читай @python_practics, там есть:

✅ полезные сниппеты кода для твоих задач

✅ теория Python понятным языком с примерами

✅ вопросы из собеседований

✅ бесплатные книги и курсы по Python

✅ тесты и опросы для тех, кто не запоминает сухую инфу

Читать полностью…

Python Learning

Что такое синхронный код?

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

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

#для_начинающих

Читать полностью…

Python Learning

Почему пустой список нельзя использовать как аргумент по умолчанию?

Значения по умолчанию для аргументов функции вычисляются только один раз, когда функция определяется, а не каждый раз, когда она вызывается. Таким образом, если вы попытаетесь использовать изменяемый тип данных (например, список) как аргумент по умолчанию для функции, то каждый вызов функции, который изменяет это значение, также изменит значение по умолчанию для всех последующих вызовов функции. Это может привести к неожиданным поведениям.

Пустой список — это изменяемый тип данных в Python, поэтому его использование в качестве аргумента по умолчанию не рекомендуется. Вместо этого лучше использовать None в качестве значения по умолчанию и создавать новый пустой список внутри функции, если требуется список.

#для_начинающих

Читать полностью…

Python Learning

Асинхронный код

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

#для_продвинутых

Читать полностью…

Python Learning

Чем отличаются iter и next?

iter и next являются методами специальных методов в Python, которые обеспечивают поддержку итерации для объектов.

Метод iter возвращает объект, который может быть использован для итерации по элементам контейнера. Объект, возвращаемый iter, должен содержать метод next.

Метод next должен вернуть следующий элемент в итерации или вызвать исключение StopIteration, если элементов больше нет.

Таким образом, метод iter используется для создания итератора, а метод next используется для перехода к следующему элементу в итерации.

#для_начинающих

Читать полностью…

Python Learning

Как сделать копию и глубокую копию объекта?

Метод copy() создает поверхностную копию объекта, то есть создает новый объект, который содержит ссылки на те же объекты, что и исходный объект. Если вы измените какой-либо из этих объектов, изменения отразятся и на копии, и на исходном объекте.

Метод deepcopy() создает глубокую копию объекта, то есть создает новый объект, который содержит копии всех объектов, на которые ссылаются элементы исходного объекта. Если вы измените какой-либо из этих объектов, изменения не отразятся на копии или на исходном объекте.

#для_начинающих

Читать полностью…

Python Learning

__next__

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

#для_начинающих

Читать полностью…

Python Learning

Хвостовая рекурсия

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

Для создания хвостовой рекурсии в Python, вы можете использовать декоратор @functools.lru_cache в сочетании с аргументами, которые передаются функции.

#для_продвинутых

Читать полностью…

Python Learning

Что такое файлы .pth

Файлы с расширением .pth — это файлы, которые могут быть использованы для добавления директорий в путь поиска модулей Python. Директивы .pth выполняются при запуске интерпретатора Python и добавляют определенные каталоги в переменную sys.path.

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

#для_начинающих

Читать полностью…

Python Learning

Декоратор timeit

Декоратор timeit используется для измерения времени выполнения функции или участка кода. Этот декоратор позволяет вам оценить, сколько времени занимает выполнение определенной операции.

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

#для_начинающих

Читать полностью…

Python Learning

PYTHONSTARTUP

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

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

#для_начинающих

Читать полностью…

Python Learning

Цепи Маркова

Цепи Маркова (Markov Chains) представляют собой математическую модель, которая описывает последовательность состояний, в которых система может находиться, и вероятности переходов между этими состояниями. В Python вы можете реализовать Цепи Маркова с помощью списка списков или матрицы переходных вероятностей.

На картинке пример простой Цепи Маркова, описывающей погоду (солнечно, облачно, дождливо) с вероятностями переходов между этими состояниями

#для_продвинутых

Читать полностью…

Python Learning

Декораторы для проверки сигнатуры метода

Декораторы для проверки сигнатуры метода (method signature checking decorators) могут быть полезными для улучшения контроля над аргументами и возвращаемыми значениями методов. Они позволяют вам проверить, что метод вызывается с правильными типами аргументов и возвращает ожидаемые значения. Для создания таких декораторов можно использовать библиотеку functools и inspect.

#для_продвинутых

Читать полностью…

Python Learning

Обезьяний патч

Обезьяний патч (Monkey patch) в Python — это техника, которая позволяет изменять или расширять функциональность существующих классов, модулей или объектов во время выполнения программы. Этот термин образовался из-за аналогии с идеей того, что вы «насаживаете» (patch) код поверх существующего, подобно обучению обезьяны выполнять новые трюки.

#для_продвинутых

Читать полностью…

Python Learning

Удаляем фон с изображения

rembg - это полезная библиотека, которая легко удаляет фон с любой фотографии.

Установка - !pip install rembg.

Документацию можно посмотреть здесь.

Читать полностью…

Python Learning

Почему пустой список нельзя использовать как аргумент по умолчанию?

Значения по умолчанию для аргументов функции вычисляются только один раз, когда функция определяется, а не каждый раз, когда она вызывается. Таким образом, если вы попытаетесь использовать изменяемый тип данных (например, список) как аргумент по умолчанию для функции, то каждый вызов функции, который изменяет это значение, также изменит значение по умолчанию для всех последующих вызовов функции. Это может привести к неожиданным поведениям.

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

#для_начинающих

Читать полностью…

Python Learning

Слайс

Слайс (или срез, англ. slice) — это способ выбрать часть последовательности (например, строки, списка, кортежа) путем указания начального и конечного индексов, а также шага. Слайсы используются для извлечения подстрок, подсписков или подкортежей из исходной последовательности.

Слайсы полезны для работы с большими последовательностями данных и предоставляют удобный способ извлечения нужных элементов из них.

#для_начинающих

Читать полностью…

Python Learning

🔍 Rust Journey: Хотите освоить язык программирования, который завоевывает мир?

🚀 Илон Маск, один из ведущих инноваторов нашего времени, утверждает, что за Rust будущее. А когда последний раз он ошибался в своих прогнозах? 😉

🪟Также недавно стало известно, что ядро Windows 11 переписывается на Rust.

✨ Не упустите свой шанс быть в авангарде IT-революции. Подписывайтесь на канал Rust Journey и начните свой путь в захватывающий мир Rust сегодня!

Читать полностью…

Python Learning

А вы знали, что есть нейросеть, которая кодит на Java лучше 68% айтишников?

А еще есть программа, которая анализирует требования HR’ов разных компаний и оформляет ваше резюме конкретно под них. Шанс получить оффер растет в 2-3 раза.

Нейросети – это не только ChatGPT и Миджорни, и канал «ЧбЕ» вам это докажет.

Уже сейчас есть нейронки, которые кодят лучше джунов – и если не следить за этим сейчас, то через пару лет даже топовый прогер рискует остаться в wait-листе эйчаров. А здесь о таких вещах пишут заранее.

Подпишитесь, айтишникам пригодится: ЧбЕ

Читать полностью…

Python Learning

Глобальные переменные

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

#для_начинающих

Читать полностью…

Python Learning

Зачем нужен pdb

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

Модуль pdb предоставляет интерфейс командной строки, который можно использовать для взаимодействия с кодом Python во время его выполнения. Вы можете войти в режим pdb в своей программе Python, вставив следующую строку кода там, где вы хотите остановить отладчик: импортировать PDB.

#для_продвинутых

Читать полностью…

Python Learning

Что такое модуль __init__.py?

Модуль __init__.py является частью организации пакетов (packages) в Python. Этот файл используется для определения директории как пакета и может содержать код и переменные, которые будут доступны при импорте пакета. Важно отметить, что __init__.py не является обязательным для всех директорий, но он необходим, чтобы Python интерпретировал директорию как пакет.

#для_начинающих

Читать полностью…

Python Learning

Что такое wheels и eggs?

В Python wheels и eggs — это форматы пакетов для установки и дистрибуции пакетов с помощью утилиты управления пакетами pip.

Egg был первоначально разработан как формат дистрибуции пакетов для Python, но был заменен wheels. В отличие от wheels, eggs могут содержать .pyc файлы, что может привести к проблемам при установке на другой платформе или версии Python.

Wheels — это новый формат дистрибуции пакетов, который был введен в Python 2.7. Он поддерживается большинством пакетов на PyPI и имеет множество преимуществ.

#для_продвинутых

Читать полностью…

Python Learning

Docstring

Docstring (дословно «строка документации») — это строка, которая используется для документирования модулей, функций, классов и методов в вашем коде. Она представляет собой строковый литерал, который следует сразу после определения элемента кода и предназначен для объяснения, как работает этот элемент, какие аргументы он принимает, какие значения возвращает и другие важные детали.

Обычно docstring располагается в самом верхнем уровне определения элемента кода и заключается в тройные кавычки (одинарные или двойные).

#для_продвинутых

Читать полностью…

Python Learning

reduce()

Функция reduce() в Python реализует операцию свёртки (или аккумуляции) для элементов итерируемой последовательности, используя заданную функцию. Она поочередно применяет функцию к парам элементов итерируемой последовательности и аккумулирует результаты.

Обратите внимание, что начальное значение аккумулятора можно указать в качестве третьего аргумента функции reduce(). Если оно не указано, то в качестве начального значения используется первый элемент последовательности.

#для_начинающих

Читать полностью…

Python Learning

Срочно ищем Python разработчиков всех уровней!

Собираем вакансии и стажировки, которых еще нет в публичном доступе. Прямые контакты рекрутеров в Telegram.

Посмотреть можно здесь

Читать полностью…

Python Learning

pydoc

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

#для_начинающих

Читать полностью…

Python Learning

Срезы

Срезы (slices) в Python — это способ получения подстроки (подсписка) из последовательности, такой как строка (str), список (list) или кортеж (tuple).

#для_начинающих

Читать полностью…

Python Learning

PYTHONOPTIMIZE

PYTHONOPTIMIZE — это переменная среды в Python, которая используется для оптимизации выполнения кода на языке Python. Эта переменная определяет уровень оптимизации, который применяется к коду при его выполнении.

Вы можете установить значение PYTHONOPTIMIZE в соответствующей переменной среды перед запуском интерпретатора Python, чтобы управлять уровнем оптимизации ваших программ. Это установит уровень оптимизации на 2 для выполнения my_script.py.

#для_продвинутых

Читать полностью…
Subscribe to a channel