Docstring
Docstring (дословно «строка документации») — это строка, которая используется для документирования модулей, функций, классов и методов в вашем коде. Она представляет собой строковый литерал, который следует сразу после определения элемента кода и предназначен для объяснения, как работает этот элемент, какие аргументы он принимает, какие значения возвращает и другие важные детали.
Обычно docstring располагается в самом верхнем уровне определения элемента кода и заключается в тройные кавычки (одинарные или двойные).
#для_продвинутых
Docstring (дословно «строка документации») — это строка, которая используется для документирования модулей, функций, классов и методов в вашем коде. Она представляет собой строковый литерал, который следует сразу после определения элемента кода и предназначен для объяснения, как работает этот элемент, какие аргументы он принимает, какие значения возвращает и другие важные детали.
Обычно docstring располагается в самом верхнем уровне определения элемента кода и заключается в тройные кавычки (одинарные или двойные).
#для_продвинутых
👍14❤2
Что такое файлы .pth
Файлы с расширением .pth — это файлы, которые могут быть использованы для добавления директорий в путь поиска модулей Python. Директивы .pth выполняются при запуске интерпретатора Python и добавляют определенные каталоги в переменную sys.path.
Это удобно, когда нужно импортировать модули из нестандартных директорий без необходимости переноса файлов в директории по умолчанию.
#для_начинающих
Файлы с расширением .pth — это файлы, которые могут быть использованы для добавления директорий в путь поиска модулей Python. Директивы .pth выполняются при запуске интерпретатора Python и добавляют определенные каталоги в переменную sys.path.
Это удобно, когда нужно импортировать модули из нестандартных директорий без необходимости переноса файлов в директории по умолчанию.
#для_начинающих
👍12❤2🎉1
Что такое wheels и eggs?
В Python wheels и eggs — это форматы пакетов для установки и дистрибуции пакетов с помощью утилиты управления пакетами pip.
Egg был первоначально разработан как формат дистрибуции пакетов для Python, но был заменен wheels. В отличие от wheels, eggs могут содержать .pyc файлы, что может привести к проблемам при установке на другой платформе или версии Python.
Wheels — это новый формат дистрибуции пакетов, который был введен в Python 2.7. Он поддерживается большинством пакетов на PyPI и имеет множество преимуществ.
#для_продвинутых
В Python wheels и eggs — это форматы пакетов для установки и дистрибуции пакетов с помощью утилиты управления пакетами pip.
Egg был первоначально разработан как формат дистрибуции пакетов для Python, но был заменен wheels. В отличие от wheels, eggs могут содержать .pyc файлы, что может привести к проблемам при установке на другой платформе или версии Python.
Wheels — это новый формат дистрибуции пакетов, который был введен в Python 2.7. Он поддерживается большинством пакетов на PyPI и имеет множество преимуществ.
#для_продвинутых
🎉9👍6
Хвостовая рекурсия
Хвостовая рекурсия — это вид рекурсии, при котором рекурсивный вызов функции происходит в конце функции и результат этого вызова сразу возвращается, без выполнения каких-либо дополнительных операций. Хвостовая рекурсия может быть оптимизирована интерпретатором Python, чтобы избежать переполнения стека и улучшить производительность.
Для создания хвостовой рекурсии в Python, вы можете использовать декоратор
#для_продвинутых
Хвостовая рекурсия — это вид рекурсии, при котором рекурсивный вызов функции происходит в конце функции и результат этого вызова сразу возвращается, без выполнения каких-либо дополнительных операций. Хвостовая рекурсия может быть оптимизирована интерпретатором Python, чтобы избежать переполнения стека и улучшить производительность.
Для создания хвостовой рекурсии в Python, вы можете использовать декоратор
@functools.lru_cache
в сочетании с аргументами, которые передаются функции.#для_продвинутых
👍18❤1🎉1
Что такое модуль __init__.py?
Модуль
#для_начинающих
Модуль
__init__.py
является частью организации пакетов (packages) в Python. Этот файл используется для определения директории как пакета и может содержать код и переменные, которые будут доступны при импорте пакета. Важно отметить, что __init__.py
не является обязательным для всех директорий, но он необходим, чтобы Python интерпретировал директорию как пакет.#для_начинающих
👍9❤5
__next__
#для_начинающих
__next__
— это метод, который используется в Python для реализации протокола итератора в пользовательских классах. Протокол итератора позволяет объекту перебирать элементы один за другим. Этот метод должен быть определен в классе, чтобы он мог быть итерируемым с помощью цикла for
.#для_начинающих
👍14❤1
Зачем нужен pdb
Модуль
#для_продвинутых
pdb
— это интерактивный отладчик для Python, с помощью которого можно перемещаться по коду во время запуска вашей программы, смотреть и изменять значения переменных, построчно навигироваться по коду (в том числе углубляться во вложенности кода), назначать брейкпоинты и все прочие операции присущие отладчику.Модуль
pdb
предоставляет интерфейс командной строки, который можно использовать для взаимодействия с кодом Python во время его выполнения. Вы можете войти в режим pdb
в своей программе Python, вставив следующую строку кода там, где вы хотите остановить отладчик: импортировать PDB
.#для_продвинутых
👍12❤2🔥1
Как сделать копию и глубокую копию объекта?
Метод
Метод
#для_начинающих
Метод
copy()
создает поверхностную копию объекта, то есть создает новый объект, который содержит ссылки на те же объекты, что и исходный объект. Если вы измените какой-либо из этих объектов, изменения отразятся и на копии, и на исходном объекте.Метод
deepcopy()
создает глубокую копию объекта, то есть создает новый объект, который содержит копии всех объектов, на которые ссылаются элементы исходного объекта. Если вы измените какой-либо из этих объектов, изменения не отразятся на копии или на исходном объекте.#для_начинающих
👍15🎉4
Глобальные переменные
Глобальные переменные — это переменные, которые определены в глобальной области видимости, то есть они доступны из любой части программы. Глобальные переменные могут быть определены за пределами функций и классов, и они будут видны во всех частях программы, включая функции и методы.
#для_начинающих
Глобальные переменные — это переменные, которые определены в глобальной области видимости, то есть они доступны из любой части программы. Глобальные переменные могут быть определены за пределами функций и классов, и они будут видны во всех частях программы, включая функции и методы.
#для_начинающих
👍8🆒2🎉1
Чем отличаются iter и next?
Метод
Метод next должен вернуть следующий элемент в итерации или вызвать исключение
Таким образом, метод
#для_начинающих
iter
и next
являются методами специальных методов в Python, которые обеспечивают поддержку итерации для объектов.Метод
iter
возвращает объект, который может быть использован для итерации по элементам контейнера. Объект, возвращаемый iter
, должен содержать метод next
.Метод next должен вернуть следующий элемент в итерации или вызвать исключение
StopIteration
, если элементов больше нет.Таким образом, метод
iter
используется для создания итератора, а метод next используется для перехода к следующему элементу в итерации.#для_начинающих
👍15❤4
Асинхронный код
Асинхронный код — это подход к написанию кода, который позволяет выполнять несколько задач одновременно в рамках одного процесса. Это достигается за счет использования асинхронных функций и корутин. В отличие от синхронного кода, который выполняет каждую задачу последовательно, асинхронный код может запустить несколько задач «параллельно» и организовать их выполнение с помощью итераций и вызовов коллбеков.
#для_продвинутых
Асинхронный код — это подход к написанию кода, который позволяет выполнять несколько задач одновременно в рамках одного процесса. Это достигается за счет использования асинхронных функций и корутин. В отличие от синхронного кода, который выполняет каждую задачу последовательно, асинхронный код может запустить несколько задач «параллельно» и организовать их выполнение с помощью итераций и вызовов коллбеков.
#для_продвинутых
👍16🎉3🗿3❤1👨💻1
Почему пустой список нельзя использовать как аргумент по умолчанию?
Значения по умолчанию для аргументов функции вычисляются только один раз, когда функция определяется, а не каждый раз, когда она вызывается. Таким образом, если вы попытаетесь использовать изменяемый тип данных (например, список) как аргумент по умолчанию для функции, то каждый вызов функции, который изменяет это значение, также изменит значение по умолчанию для всех последующих вызовов функции. Это может привести к неожиданным поведениям.
Пустой список — это изменяемый тип данных в Python, поэтому его использование в качестве аргумента по умолчанию не рекомендуется. Вместо этого лучше использовать None в качестве значения по умолчанию и создавать новый пустой список внутри функции, если требуется список.
#для_начинающих
Значения по умолчанию для аргументов функции вычисляются только один раз, когда функция определяется, а не каждый раз, когда она вызывается. Таким образом, если вы попытаетесь использовать изменяемый тип данных (например, список) как аргумент по умолчанию для функции, то каждый вызов функции, который изменяет это значение, также изменит значение по умолчанию для всех последующих вызовов функции. Это может привести к неожиданным поведениям.
Пустой список — это изменяемый тип данных в Python, поэтому его использование в качестве аргумента по умолчанию не рекомендуется. Вместо этого лучше использовать None в качестве значения по умолчанию и создавать новый пустой список внутри функции, если требуется список.
#для_начинающих
👍17
Слайс
Слайс (или срез, англ. slice) — это способ выбрать часть последовательности (например, строки, списка, кортежа) путем указания начального и конечного индексов, а также шага. Слайсы используются для извлечения подстрок, подсписков или подкортежей из исходной последовательности.
Слайсы полезны для работы с большими последовательностями данных и предоставляют удобный способ извлечения нужных элементов из них.
#для_начинающих
Слайс (или срез, англ. slice) — это способ выбрать часть последовательности (например, строки, списка, кортежа) путем указания начального и конечного индексов, а также шага. Слайсы используются для извлечения подстрок, подсписков или подкортежей из исходной последовательности.
Слайсы полезны для работы с большими последовательностями данных и предоставляют удобный способ извлечения нужных элементов из них.
#для_начинающих
👍9❤3
Что такое синхронный код?
Синхронный код — это код, который выполняется последовательно, один за другим, и блокирует выполнение других задач до его завершения. Это означает, что если у вас есть функция, которая занимает много времени на выполнение, и вы вызываете ее в основной программе, то выполнение программы заблокируется до завершения этой функции.
Выполнение синхронного кода может занять много времени и может вызвать проблемы с производительностью, особенно когда код выполняет блокирующие операции, такие как чтение и запись файлов, обращение к сети, или поиск значений в базе данных.
#для_начинающих
Синхронный код — это код, который выполняется последовательно, один за другим, и блокирует выполнение других задач до его завершения. Это означает, что если у вас есть функция, которая занимает много времени на выполнение, и вы вызываете ее в основной программе, то выполнение программы заблокируется до завершения этой функции.
Выполнение синхронного кода может занять много времени и может вызвать проблемы с производительностью, особенно когда код выполняет блокирующие операции, такие как чтение и запись файлов, обращение к сети, или поиск значений в базе данных.
#для_начинающих
👍15🎉2
Почему пустой список нельзя использовать как аргумент по умолчанию?
Значения по умолчанию для аргументов функции вычисляются только один раз, когда функция определяется, а не каждый раз, когда она вызывается. Таким образом, если вы попытаетесь использовать изменяемый тип данных (например, список) как аргумент по умолчанию для функции, то каждый вызов функции, который изменяет это значение, также изменит значение по умолчанию для всех последующих вызовов функции. Это может привести к неожиданным поведениям.
Пустой список — это изменяемый тип данных, поэтому его использование в качестве аргумента по умолчанию не рекомендуется. Вместо этого лучше использовать
#для_начинающих
Значения по умолчанию для аргументов функции вычисляются только один раз, когда функция определяется, а не каждый раз, когда она вызывается. Таким образом, если вы попытаетесь использовать изменяемый тип данных (например, список) как аргумент по умолчанию для функции, то каждый вызов функции, который изменяет это значение, также изменит значение по умолчанию для всех последующих вызовов функции. Это может привести к неожиданным поведениям.
Пустой список — это изменяемый тип данных, поэтому его использование в качестве аргумента по умолчанию не рекомендуется. Вместо этого лучше использовать
None
в качестве значения по умолчанию и создавать новый пустой список внутри функции, если требуется список.#для_начинающих
👍17🎉2
Удаляем фон с изображения
rembg - это полезная библиотека, которая легко удаляет фон с любой фотографии.
Установка - !pip install rembg.
Документацию можно посмотреть здесь.
rembg - это полезная библиотека, которая легко удаляет фон с любой фотографии.
Установка - !pip install rembg.
Документацию можно посмотреть здесь.
👍41❤3
namedtuple
Чтобы использовать
#для_начинающих
namedtuple
— это класс из модуля collections
в Python, который позволяет создавать именованные кортежи. Именованные кортежи подобны обычным кортежам, но в них элементы доступны по именам, а не только по индексам. Это делает код более читаемым и понятным, особенно когда кортеж содержит много элементов.Чтобы использовать
namedtuple
, вы должны импортировать его из модуля collections
и определить свой собственный класс именованного кортежа, указав имена полей.#для_начинающих
👍17❤1
Как проверить файл .py на синтаксические ошибки, не запуская его?
Утилита py_compile, позволит проверить файл .py на наличие синтаксических ошибок без его запуска.
Вы можете использовать командную строку или терминал для проверки файла .py на наличие синтаксических ошибок, не запуская его, используя флаг -m с модулем py_compile.
Откройте командную строку или терминал. Перейдите в каталог, содержащий файл .py, который вы хотите проверить, где yourfile.py — это имя файла, который вы хотите проверить.
#для_начинающих
Утилита py_compile, позволит проверить файл .py на наличие синтаксических ошибок без его запуска.
Вы можете использовать командную строку или терминал для проверки файла .py на наличие синтаксических ошибок, не запуская его, используя флаг -m с модулем py_compile.
Откройте командную строку или терминал. Перейдите в каталог, содержащий файл .py, который вы хотите проверить, где yourfile.py — это имя файла, который вы хотите проверить.
#для_начинающих
👍20❤2🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Анимация циркуля и линейки
В данной статье автор подробно объясняет как визуализировать различные объекты с помощью Python.
Смотреть статью
В данной статье автор подробно объясняет как визуализировать различные объекты с помощью Python.
Смотреть статью
👍17❤2