Python Learning
33.4K subscribers
1.95K photos
8 videos
7 files
954 links
№ 4974297878

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

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

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

Реклама на бирже - https://telega.in/c/Python_per_month
Download Telegram
unit-тесты

Unit-тесты (или unittests) — это метод тестирования ПО, который позволяет проверить, работает ли отдельная единица кода (обычно функция или метод) так, как ожидается. Библиотека unittest входит в стандартную библиотеку Python и предоставляет набор инструментов для написания и выполнения тестовых сценариев.

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

#для_начинающих
🎉9👍41🔥1
Паттерн проектирования «Стратегия»

«Стратегия» (Strategy) является одним из шаблонов поведения, определенных в книге «Банды четырёх» (Gang of Four, GoF). Этот паттерн относится к категории поведенческих паттернов и решает задачу определения семейства алгоритмов, инкапсуляции каждого из них и обеспечения их взаимозаменяемости. Это позволяет клиентскому коду выбирать нужный алгоритм независимо от его использования.

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

#для_продвинутых
👍13🎉2
👍7
Что выведет этот код?
Anonymous Quiz
24%
0
39%
1
28%
Ошибку
9%
Узнать ответ
👍14🤔41
memory_profiler

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

Для использования memory_profiler вы должны установить его сначала. Это можно сделать с помощью инструмента установки пакетов Python, такого как pip.

#для_начинающих
👍10🎉1
Acceptance Testing

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

Основной целью Acceptance Testing является убедиться, что ПО работает в соответствии с функциональными и нефункциональными требованиями, установленными для проекта.

#для_начинающих
👍7🎉1
Компрехеншен

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

В Python существует несколько видов компрехеншенов: списковые компрехеншены (List comprehensions), множественные компрехеншены (Set comprehensions) и словарные компрехеншены (Dictionary comprehensions).

#для_начинающих
👍18🎉2
Расстояние Левенштейна

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

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

#для_продвинутых
👍14🥰21🆒1
Изменяем цвет текста в терминале

Colorama — это библиотека для языка программирования Python, которая позволяет использовать ANSI-последовательности для вывода цветного текста в терминале на разных платформах.

Кроме того, можно использовать константы из модуля Style для установки стиля текста (например, жирный или подчеркнутый) и константы из модуля Back для установки цвета фона.

Например, чтобы вывести зеленый текст с помощью Colorama, можно использовать код, приведенный выше.
В этом примере init используется для инициализации библиотеки и обеспечения работы ANSI-последовательностей на Windows, а константа Fore для установки цвета текста.
👍10🎉2
Отрицательные индексы

В Python можно использовать отрицательные индексы для обращения к элементам последовательностей (например, строк, списков, кортежей) с конца. Положительные индексы начинаются с 0 для первого элемента, 1 для второго и так далее. Отрицательные индексы начинаются с -1 для последнего элемента, -2 для предпоследнего и так далее.

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

#для_начинающих
👍181
Что такое распаковка кортежа?

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

Распаковка кортежей может быть полезным при работе с функциями, возвращающими несколько значений, а также для обмена значениями переменных без необходимости использовать дополнительные временные переменные.
👍14🔥1🎉1
👍3
Что выведет этот код?
Anonymous Quiz
6%
4
33%
3
47%
Ошибку
15%
Узнать ответ
👍20🤔9🗿21
Тернарный оператор

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

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

#для_начинающих
👍121
Set comprehension

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

#для_начинающих
👍5😱2
Рисуем карту столицы Австралии

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

Установить пакет - pip install folium

В нашем примере мы рисуем карту Канберры - столицы Австралии(Сама карта находится в посте выше).
👍182🎉2👨‍💻1
Pickling

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

#для_начинающих
👍212
Фабрика декораторов

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

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

#для_начинающих
👍143🤔3
Гринлеты

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

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

#для_продвинутых
👍153
Middleware (Django)

Middleware (промежуточное программное обеспечение) — это слой программного кода, который работает между различными компонентами приложения для обработки и управления запросами, ответами и другими аспектами обработки данных. Middleware обычно используется в веб-фреймворках и приложениях для обработки HTTP-запросов, но концепция middleware может применяться и в других контекстах.

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

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