Возможная ошибка при обработке элементов
Не меняйте количество элементов коллекции в теле цикла во время итерации по этой же коллекции! — Это порождает не всегда очевидные на первый взгляд ошибки. Чтобы этого избежать подобных побочных эффектов, можно, например, итерировать копию коллекции.
🔗 Python tricks
Не меняйте количество элементов коллекции в теле цикла во время итерации по этой же коллекции! — Это порождает не всегда очевидные на первый взгляд ошибки. Чтобы этого избежать подобных побочных эффектов, можно, например, итерировать копию коллекции.
🔗 Python tricks
Фреймворк PySimpleGUI
PySimpleGUI — это популярный фреймворк для создания простых графических интерфейсов пользователя.
Он позволяет быстро создавать интерфейсы при помощи Python, без необходимости изучать сложные GUI библиотеки, такие как
— Простые GUI для скриптов автоматизации.
— Инструменты для обработки и визуализации данных.
— Маленькие вспомогательные приложения для повседневных задач.
Основные преимущества
— Простой и интуитивно понятный синтаксис.
— Кроссплатформенность: работает на Windows, MacOS, Linux.
— Встроенная поддержка многих виджетов и тем оформления.
— Автоматическое размещение элементов GUI.
🔗 Python tricks
PySimpleGUI — это популярный фреймворк для создания простых графических интерфейсов пользователя.
Он позволяет быстро создавать интерфейсы при помощи Python, без необходимости изучать сложные GUI библиотеки, такие как
Tkinter
, Qt
или wxPython
.PySimpleGUI
широко используется для создания небольших утилит и инструментов с GUI, например:— Простые GUI для скриптов автоматизации.
— Инструменты для обработки и визуализации данных.
— Маленькие вспомогательные приложения для повседневных задач.
Основные преимущества
PySimpleGUI
:— Простой и интуитивно понятный синтаксис.
— Кроссплатформенность: работает на Windows, MacOS, Linux.
— Встроенная поддержка многих виджетов и тем оформления.
— Автоматическое размещение элементов GUI.
🔗 Python tricks
Объединение списка, словаря и изменяемого множества с изменением исходной коллекции (ч.3)
Для изменяемого множества (set) кроме операций, описанных в предыдущем разделе, также возможны их аналоги, но уже с изменением исходного множества — эти методы заканчиваются на _update. Результат зависит от того, какое множество каким обновляем.
🔗 Python tricks
Для изменяемого множества (set) кроме операций, описанных в предыдущем разделе, также возможны их аналоги, но уже с изменением исходного множества — эти методы заканчиваются на _update. Результат зависит от того, какое множество каким обновляем.
🔗 Python tricks
Особенности работы с изменяемой и не изменяемой коллекцией (ч.1)
Строка неизменяемая коллекция — если мы ее меняем — мы создаем новый объект!
🔗 Python tricks
Строка неизменяемая коллекция — если мы ее меняем — мы создаем новый объект!
🔗 Python tricks
Библиотека setuptools
Библиотека
🔗 Python tricks
Библиотека
setuptools
является инструментом для упрощения процесса создания, установки и распространения пакетов Python. Она используется в основном для упрощения установки и управления зависимостями Python-пакетов. setuptools
предоставляет функциональность для создания файлов setup.py
, которые содержат информацию о вашем пакете, его зависимостях и других метаданных. Этот файл используется инструментами для установки пакетов, такими как pip
.🔗 Python tricks
Метод issuperset()
Метод
🔗 Python tricks
Метод
issuperset()
возвращает True, если все элементы указанного набора существуют в исходном наборе, в противном случае он возвращает False.🔗 Python tricks
Моржовый оператор (Walrus Operator)
Моржовый оператор (Walrus operator) — это оператор :=, введенный в версии 3.8. Он позволяет одновременно присвоить значение переменной и вернуть его.
Синтаксис выглядит так: имя_переменной := выражение. Справа вычисляется выражение и присваивается переменной слева
Переменная доступна в остальной части выражения после оператора.
Это удобно при работе с выражениями со сложными вложенными операциями. Позволяет избежать повторного вычисления.
🔗 Python tricks
Моржовый оператор (Walrus operator) — это оператор :=, введенный в версии 3.8. Он позволяет одновременно присвоить значение переменной и вернуть его.
Синтаксис выглядит так: имя_переменной := выражение. Справа вычисляется выражение и присваивается переменной слева
Переменная доступна в остальной части выражения после оператора.
Это удобно при работе с выражениями со сложными вложенными операциями. Позволяет избежать повторного вычисления.
🔗 Python tricks
set.intersection update
Метод intersection update() удаляет элементы, которых нет в обоих множествах (или во всех множествах, если сравнение выполняется между более чем двумя множествами). Данный метод отличается от метода intersection(). intersection() возвращает новое множество без нежелательных элементов, а метод intersection update() удаляет ненужные элементы из исходного множества.
🔗 Python tricks
Метод intersection update() удаляет элементы, которых нет в обоих множествах (или во всех множествах, если сравнение выполняется между более чем двумя множествами). Данный метод отличается от метода intersection(). intersection() возвращает новое множество без нежелательных элементов, а метод intersection update() удаляет ненужные элементы из исходного множества.
🔗 Python tricks
string.lstrip
lstrip() возвращает копию строки с удаленными ведущими символами. Все комбинации символов в аргументе chars удаляются слева от строки до первого несоответствия. Если аргумент chars не указан, все ведущие пробелы удаляются из строки.
🔗 Python tricks
lstrip() возвращает копию строки с удаленными ведущими символами. Все комбинации символов в аргументе chars удаляются слева от строки до первого несоответствия. Если аргумент chars не указан, все ведущие пробелы удаляются из строки.
🔗 Python tricks
Особенности работы с изменяемой и не изменяемой коллекцией (ч.2)
Список изменяем и тут надо быть очень внимательным, чтобы не допустить серьезную ошибку! Сравните данный пример с предыдущем примером со строками.
🔗 Python tricks
Список изменяем и тут надо быть очень внимательным, чтобы не допустить серьезную ошибку! Сравните данный пример с предыдущем примером со строками.
🔗 Python tricks
Класс Process
Класс
Класс
🔗 Python tricks
Класс
Process
предоставляется модулем multiprocessing
и используется для создания и управления процессами. Процессы являются отдельными экземплярами выполнения программы, каждый со своим собственным пространством памяти, ресурсами и потоками выполнения. Использование процессов вместо потоков может быть полезным в ситуациях, когда требуется более высокая изоляция данных, или когда нужно использовать несколько ядер процессора для параллельной обработки.Класс
Process
предоставляет простой способ создания процесса в Python. Он принимает функцию, которую нужно выполнить в новом процессе, и может быть использован для передачи данных между родительским и дочерним процессами.🔗 Python tricks
PySimpleGUI
PySimpleGUI — это простая и легкая в использовании библиотека для создания графического интерфейса (GUI) в Python. Она предоставляет простые инструменты для создания оконных приложений с использованием графических элементов, таких как кнопки, текстовые поля, чекбоксы и др. PySimpleGUI предоставляет удобный интерфейс для создания GUI, особенно для начинающих разработчиков.
PySimpleGUI поддерживает различные стили и темы, и вы можете легко настраивать внешний вид вашего приложения. Вы можете найти дополнительные примеры использования PySimpleGUI на официальном сайте проекта.
🔗 Python tricks
PySimpleGUI — это простая и легкая в использовании библиотека для создания графического интерфейса (GUI) в Python. Она предоставляет простые инструменты для создания оконных приложений с использованием графических элементов, таких как кнопки, текстовые поля, чекбоксы и др. PySimpleGUI предоставляет удобный интерфейс для создания GUI, особенно для начинающих разработчиков.
PySimpleGUI поддерживает различные стили и темы, и вы можете легко настраивать внешний вид вашего приложения. Вы можете найти дополнительные примеры использования PySimpleGUI на официальном сайте проекта.
🔗 Python tricks
Особенности работы с изменяемой и не изменяемой коллекцией (ч.2)
Список изменяем и тут надо быть очень внимательным, чтобы не допустить серьезную ошибку! Сравните данный пример с предыдущем примером со строками.
🔗 Python tricks
Список изменяем и тут надо быть очень внимательным, чтобы не допустить серьезную ошибку! Сравните данный пример с предыдущем примером со строками.
🔗 Python tricks
Создание объектов, поддерживающих выражение with
Все знают о том, как, например, открыть файл, или, возможно, как установить блокировку с использованием оператора with. Но можно ли самостоятельно реализовать механизм управления блокировками? Да, это вполне реально. Протокол управления контекстом исполнения реализуется с использованием методов enter и exit
🔗 Python tricks
Все знают о том, как, например, открыть файл, или, возможно, как установить блокировку с использованием оператора with. Но можно ли самостоятельно реализовать механизм управления блокировками? Да, это вполне реально. Протокол управления контекстом исполнения реализуется с использованием методов enter и exit
🔗 Python tricks
Добавляем условие для фильтрации
Важно: Условие проверяется на каждой итерации, и только элементы ему удовлетворяющие идут в обработку в выражении.
Мы можем использовать несколько условий, комбинируя их логическими операторами
🔗 Python tricks
Важно: Условие проверяется на каждой итерации, и только элементы ему удовлетворяющие идут в обработку в выражении.
Мы можем использовать несколько условий, комбинируя их логическими операторами
🔗 Python tricks
Добавляем обработку элемента в выражении
Мы можем вставлять не сам текущий элемент, прошедший фильтр, а результат вычисления выражения с ним или результат его обработки функцией.
Выражение выполняется независимо на каждой итерации, обрабатывая каждый элемент индивидуально.
🔗 Python tricks
Мы можем вставлять не сам текущий элемент, прошедший фильтр, а результат вычисления выражения с ним или результат его обработки функцией.
Выражение выполняется независимо на каждой итерации, обрабатывая каждый элемент индивидуально.
🔗 Python tricks
Dictionary Comprehension
Dictionary comprehension — это конструкция, позволяющая компактным способом создавать словари на основе существующих итерируемых объектов.
Dictionary comprehension применяется в ситуациях, когда нужно:
— Быстро создать словарь из списка или другого итерируемого объекта.
— Преобразовать одну структуру данных в словарь.
— Создать словарь с некоторой обработкой элементов.
Основные преимущества dictionary comprehension:
— Компактный и читаемый синтаксис по сравнению с циклами.
— Лаконичное создание словарей "на лету".
— Оптимизированная производительность по сравнению с циклами.
🔗 Python tricks
Dictionary comprehension — это конструкция, позволяющая компактным способом создавать словари на основе существующих итерируемых объектов.
Dictionary comprehension применяется в ситуациях, когда нужно:
— Быстро создать словарь из списка или другого итерируемого объекта.
— Преобразовать одну структуру данных в словарь.
— Создать словарь с некоторой обработкой элементов.
Основные преимущества dictionary comprehension:
— Компактный и читаемый синтаксис по сравнению с циклами.
— Лаконичное создание словарей "на лету".
— Оптимизированная производительность по сравнению с циклами.
🔗 Python tricks
set.remove
Метод remove() удаляет указанный элемент из множества и обновляет множество. Он не возвращает никакого значения. Если элемент, переданный в remove(), не существует, генерируется исключение KeyError.
🔗 Python tricks
Метод remove() удаляет указанный элемент из множества и обновляет множество. Он не возвращает никакого значения. Если элемент, переданный в remove(), не существует, генерируется исключение KeyError.
🔗 Python tricks
Аналоги в виде цикла for и в виде функций
Задачи решаемые с помощью генераторов выражений можно решить и без них. Каждый генератор выражений можно переписать в виде цикла for, но не каждый цикл for можно представить в виде такого выражения.
🔗 Python tricks
Задачи решаемые с помощью генераторов выражений можно решить и без них. Каждый генератор выражений можно переписать в виде цикла for, но не каждый цикл for можно представить в виде такого выражения.
🔗 Python tricks
Улучшаем читаемость
Не забываем, что в Python синтаксис позволяет использовать переносы строк внутри скобок. Используя эту возможность, можно сделать синтаксис генераторов выражений более легким для чтения.
🔗 Python tricks
Не забываем, что в Python синтаксис позволяет использовать переносы строк внутри скобок. Используя эту возможность, можно сделать синтаксис генераторов выражений более легким для чтения.
🔗 Python tricks
Green threads
Зелёные потоки (green threads) — это потоки выполнения, управление которыми вместо операционной системы производит виртуальная машина (ВМ). Green threads эмулируют многопоточную среду, не полагаясь на возможности ОС по реализации легковесных потоков. Управление ими происходит в пользовательском пространстве, а не пространстве ядра, что позволяет им работать в условиях отсутствия поддержки встроенных потоков.
🔗 Python tricks
Зелёные потоки (green threads) — это потоки выполнения, управление которыми вместо операционной системы производит виртуальная машина (ВМ). Green threads эмулируют многопоточную среду, не полагаясь на возможности ОС по реализации легковесных потоков. Управление ими происходит в пользовательском пространстве, а не пространстве ядра, что позволяет им работать в условиях отсутствия поддержки встроенных потоков.
🔗 Python tricks