ru
Feedback
Python tricks | Хитрости Питона

Python tricks | Хитрости Питона

Открыть в Telegram

Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты. Сотрудничество: @SIeep_Token Мы на платформе: https://telegram.me/python_tricks Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy

Больше
6 053
Подписчики
Нет данных24 часа
-117 дней
-5930 дней
Архив постов
Duck typing Duck typing — это парадигма в программировании, используемая в языках с динамической типизацией, таких как Python
Duck typing Duck typing — это парадигма в программировании, используемая в языках с динамической типизацией, таких как Python. Суть duck typing заключается в том, что тип объекта определяется его поведением (методами и свойствами), а не явно указанным интерфейсом или базовым классом. В Python duck typing часто выражается фразой: «Если это выглядит как утка, плавает как утка и крякает как утка, то это, вероятно, и есть утка.» 🔗 Python tricks

os.rename() В Python функция os.rename() используется для переименования файла или директории в операционной системе. Она вхо
os.rename() В Python функция os.rename() используется для переименования файла или директории в операционной системе. Она входит в модуль os. 🔗 Python tricks

Самый легкий способ мерджить словари Слияние словарей - частое действие в программировании на Python. Существует множество сп
Самый легкий способ мерджить словари Слияние словарей - частое действие в программировании на Python. Существует множество способов сделать это. Но все они были уродливы до версии Python 3.9. Начиная с Python 3.9, мы наконец-то получили самый элегантный способ объединения словарей - использование операторов объединения. 🔗 Python tricks

Используем * для мерджа списка, кортежа и множества в одну строчку Для того, чтобы это сделать самый элегантный способ - испо
Используем * для мерджа списка, кортежа и множества в одну строчку Для того, чтобы это сделать самый элегантный способ - использование * Звездочки можно использовать в качестве префиксов для распаковки их элементов. Но помимо распаковки, звездочки также можно использовать для деструктуризации присваиваний в Python. 🔗 Python tricks

collections.Counter collections.Counter — это специальный класс, предоставляющий удобный способ подсчета хэшируемых объектов.
collections.Counter collections.Counter — это специальный класс, предоставляющий удобный способ подсчета хэшируемых объектов. Он является подклассом словаря и предоставляет функциональность для подсчета количества вхождений каждого элемента в последовательность (список, кортеж, строку и т.д.). 🔗 Python tricks

Как работает хэш-таблица? Хэш-таблица в Python реализована в виде словаря (dict). Вот как это работает: — Хэширование ключей:
Как работает хэш-таблица? Хэш-таблица в Python реализована в виде словаря (dict). Вот как это работает: — Хэширование ключей: Когда вы добавляете пару ключ-значение в словарь, Python сначала вычисляет хэш-код ключа с помощью встроенной функции hash(). Хэш-код - это целое число, представляющее "отпечаток" ключа. — Разрешение коллизий: Если два разных ключа имеют одинаковый хэш-код (коллизия), Python использует механизм разрешения коллизий для размещения значений в памяти. Одним из наиболее распространенных методов разрешения коллизий является метод цепочек, когда для каждого "ячейки" хэш-таблицы выделен список, в который добавляются все значения с одинаковыми хэш-кодами. — Поиск значения: При поиске значения по ключу Python сначала вычисляет хэш-код ключа и затем использует его для определения соответствующей "ячейки" в хэш-таблице. Затем происходит поиск значения внутри этой "ячейки" (или цепочки). 🔗 Python tricks

Я бывший банкир и у меня 22 банковские карты. Но не торопитесь смеяться. Потому что за 6 лет работы я научился комбинировать
+1
Я бывший банкир и у меня 22 банковские карты. Но не торопитесь смеяться. Потому что за 6 лет работы я научился комбинировать карты разных банков так, чтобы они пассивно приносили мне по 20-25 тысяч каждый месяц. Знаете, как? Например, вы можете выпустить себе несколько бесплатных кредиток со съёмными лимитами, без процентов снимать с них деньги, и в наглую класть их на накопительные счета под 15-17% — за счёт чего с пачки бесплатных карт вам будет прилетать по 20-25 тысяч каждый месяц. Таких схем на самом деле десятки — просто о них почти никто не знает. И если вы не хотите в буквальном смысле терять свою вторую зарплату — подпишитесь на Беспощадный Банкстер. Там я даю все наводки, учу собирать по 10 тысяч в месяц на тестировании карт, зарабатывать по 25к на пачке бесплатных кредиток, да и в конце концов — навсегда отключать комиссии по картам, убирать плату за обслуживание, и даже проценты по кредитам. Поверьте, у вас буквально появится вторая зарплата — и вы её уже никогда не потеряете.

Модуль warnings Модуль warnings предоставляет возможность управления предупреждениями, которые могут быть выведены во время в
Модуль warnings Модуль warnings предоставляет возможность управления предупреждениями, которые могут быть выведены во время выполнения программы. Модуль warnings полезен, когда необходимо предупредить пользователя о каком-либо условии в программе и это условие не требует создания исключения и завершения программы. Кроме того, вы можете настроить различные параметры для управления предупреждениями, такие как фильтрация предупреждений определенного типа или их преобразование в ошибки. Подробнее об этом можно узнать в документации. 🔗 Python tricks

Избегайте вложенных циклов с помощью product Когда программа становится сложной, неизбежно приходится писать вложенные циклы.
Избегайте вложенных циклов с помощью product Когда программа становится сложной, неизбежно приходится писать вложенные циклы. Однако вложенные циклы делают программы более сложными для чтения и сопровождения. К счастью, в Python всегда можно избежать вложенных циклов с помощью встроенной функции product(). 🔗 Python tricks

Оператор морж (:=) или способ записывать данные в переменную о котором вы не знали Начиная с Python 3.8, появился новый синта
Оператор морж (:=) или способ записывать данные в переменную о котором вы не знали Начиная с Python 3.8, появился новый синтаксис под названием «оператор морж» или walrus operator, который может присваивать значения переменным как часть более крупного выражения. Оператор := получил свое милое название из-за глаз и бивней моржа. 🔗 Python tricks

Модуль warnings Модуль warnings предоставляет возможность управления предупреждениями, которые могут быть выведены во время в
Модуль warnings Модуль warnings предоставляет возможность управления предупреждениями, которые могут быть выведены во время выполнения программы. Модуль warnings полезен, когда необходимо предупредить пользователя о каком-либо условии в программе и это условие не требует создания исключения и завершения программы. Кроме того, вы можете настроить различные параметры для управления предупреждениями, такие как фильтрация предупреждений определенного типа или их преобразование в ошибки. Подробнее об этом можно узнать в документации. 🔗 Python tricks

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

Вложенный генератор внутри генератора — двумерная из двумерной Общий синтаксис: [[expression for y in x] for x in iterator] П
Вложенный генератор внутри генератора — двумерная из двумерной Общий синтаксис: [[expression for y in x] for x in iterator] Применение: Обходим двумерную структуру данных, сохраняя результат в другую двумерную структуру. 🔗 Python tricks

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

string.partition partition() разбивает строку при первом появлении разделителя на три составляющие: начало, разделитель и кон
string.partition partition() разбивает строку при первом появлении разделителя на три составляющие: начало, разделитель и конец. В результате возвращается строка в виде кортежа. Если разделитель не найден, в результате будут две пустые строки и исходная строка. 🔗 Python tricks

super() super() — это встроенная функция, которая используется для вызова родительского класса. Она позволяет вызывать методы
super() super() — это встроенная функция, которая используется для вызова родительского класса. Она позволяет вызывать методы родительского класса из дочернего класса. Это полезно при наследовании, чтобы использовать функционал базового класса. Вызов super() ищет следующий класс в цепочке наследования и вызывает этот метод. Функция принимает аргументы self и cls для связывания с текущим объектом и классом. Она часто используется в методах init дочерних классов, чтобы вызвать init родителя и инициализировать его. Использование super() позволяет избежать неявного упоминания имени базового класса в коде. 🔗 Python tricks

dict.get() Метод dict.get() принимает два аргумента — ключ и значение по умолчанию, и позволяет получить значение по ключу из
dict.get() Метод dict.get() принимает два аргумента — ключ и значение по умолчанию, и позволяет получить значение по ключу из словаря. Если ключ присутствует в словаре, возвращается соответствующее значение. Если ключа нет, возвращается значение по умолчанию, вместо ошибки KeyError. 🔗 Python tricks

Что делает метод sets.issubset()? Метод sets.issubset() позволяет проверить находится ли каждый элемент множества sets в посл
Что делает метод sets.issubset()? Метод sets.issubset() позволяет проверить находится ли каждый элемент множества sets в последовательности other. Метод возвращает True, если множество sets является подмножеством итерируемого объекта other, если нет, то вернет False. Синтаксис: sets.issubset(other). 🔗 Python tricks

Вложенные циклы for где циклы идут по независимым итераторам Общий синтаксис: [expression for x in iter1 for y in iter2] Прим
Вложенные циклы for где циклы идут по независимым итераторам Общий синтаксис: [expression for x in iter1 for y in iter2] Применение: генерируем одномерную структуру, используя данные из двух итераторов. 🔗 Python tricks

Вложенный генератор внутри генератора — двумерная из двух одномерных Общий синтаксис: [[expression for y in iter2] for x in i
Вложенный генератор внутри генератора — двумерная из двух одномерных Общий синтаксис: [[expression for y in iter2] for x in iter1] Применение: генерируем двумерную структуру, используя данные из двух одномерных итераторов. 🔗 Python tricks