Сравнение быстродействия def и lambda-функций Python. Общие функции
В нашем коде для измерения быстродействия нужна соответствующая функция. Она будет главной для всех производных. Прежде всего, мы будем измерять время выполнения не один раз — слишком велика погрешность. Функция будет принимать в аргументы функцию, для которой проводится замер, а также количество повторений этой функции.
Для самого измерения мы будем использовать разницу во времени между началом выполнения и концом.
🔗 Python tricks
В нашем коде для измерения быстродействия нужна соответствующая функция. Она будет главной для всех производных. Прежде всего, мы будем измерять время выполнения не один раз — слишком велика погрешность. Функция будет принимать в аргументы функцию, для которой проводится замер, а также количество повторений этой функции.
Для самого измерения мы будем использовать разницу во времени между началом выполнения и концом.
🔗 Python tricks
Сравнение быстродействия def и lambda-функций Python. Общие функции
Всего у нас будет 2 диаграммы: полная и усредненная. В каждой по 2 графика: для def и lambda функций. Всего нам потребуется 4 черепахи.
Список значений для 1 и 2 графика очевиден — несколько результатов выполнения замера скорости. С 3 и 4 всё сложнее — нужно найти среднее арифметическое одного из 2 первых графиков.
Дабы слишком не заморачиваться над тем, чтобы график никуда не вылезал, найдём разницу между каждым элементом каждого графика и средним значением между средними арифметическими из 1 и 2 графика. В итоге, на графике мы будем видеть не общее значение, а разницу.
🔗 Python tricks
Всего у нас будет 2 диаграммы: полная и усредненная. В каждой по 2 графика: для def и lambda функций. Всего нам потребуется 4 черепахи.
Список значений для 1 и 2 графика очевиден — несколько результатов выполнения замера скорости. С 3 и 4 всё сложнее — нужно найти среднее арифметическое одного из 2 первых графиков.
Дабы слишком не заморачиваться над тем, чтобы график никуда не вылезал, найдём разницу между каждым элементом каждого графика и средним значением между средними арифметическими из 1 и 2 графика. В итоге, на графике мы будем видеть не общее значение, а разницу.
🔗 Python tricks
random.shuffle
random.shuffle — это функция из модуля random, которая перемешивает элементы списка на месте, то есть изменяет исходный список случайным образом. Эта функция полезна, когда нужно случайным образом изменить порядок элементов в списке.
🔗 Python tricks
random.shuffle — это функция из модуля random, которая перемешивает элементы списка на месте, то есть изменяет исходный список случайным образом. Эта функция полезна, когда нужно случайным образом изменить порядок элементов в списке.
🔗 Python tricks
math.fabs
math.fabs — это функция, которая возвращает абсолютное значение числа в виде числа с плавающей точкой. В отличие от встроенной функции abs, которая может возвращать целое или число с плавающей точкой в зависимости от типа входного значения, math.fabs всегда возвращает значение типа float.
🔗 Python tricks
math.fabs — это функция, которая возвращает абсолютное значение числа в виде числа с плавающей точкой. В отличие от встроенной функции abs, которая может возвращать целое или число с плавающей точкой в зависимости от типа входного значения, math.fabs всегда возвращает значение типа float.
🔗 Python tricks
Использование выражений-генераторов для экономии памяти
Вместо того чтобы создавать целый список в памяти, можно использовать выражения-генераторы, которые по одному возвращают элементы. Это особенно полезно при работе с большими данными, так как экономит память.
Выражения-генераторы позволяют работать с большими объемами данных без создания лишних объектов в памяти, что делает их очень полезными для оптимизации ресурсов.
🔗 Python tricks
Вместо того чтобы создавать целый список в памяти, можно использовать выражения-генераторы, которые по одному возвращают элементы. Это особенно полезно при работе с большими данными, так как экономит память.
Выражения-генераторы позволяют работать с большими объемами данных без создания лишних объектов в памяти, что делает их очень полезными для оптимизации ресурсов.
🔗 Python tricks
Использование генераторов списков для создания списков в одну строку
Генераторы списков позволяют быстро и компактно создавать новые списки на основе существующих, применяя условия и функции в одной строке кода. Это делает ваш код более лаконичным и читабельным.
🔗 Python tricks
Генераторы списков позволяют быстро и компактно создавать новые списки на основе существующих, применяя условия и функции в одной строке кода. Это делает ваш код более лаконичным и читабельным.
🔗 Python tricks
🔴 Реальный собес на Python от ТехЛида с опытом работы в Авито и Яндексе в прямом эфире
11 сентября (уже в четверг!) в 19:00 по мск приходи на прямой эфир с реальным собеседованием на Middle разработчика.
Почему точно нужно прийти:
📂 Савва Демиденко, ТехЛид с опытом в Яндексе и Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Савва будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Савве
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
🔍Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
11 сентября (уже в четверг!) в 19:00 по мск приходи на прямой эфир с реальным собеседованием на Middle разработчика.
Почему точно нужно прийти:
📂 Савва Демиденко, ТехЛид с опытом в Яндексе и Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Савва будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Савве
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
🔍Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
Быстрая смена значений двух переменных без временной переменной
В Python можно легко поменять значения двух переменных местами без использования дополнительной временной переменной. Это делает код более компактным и понятным.
Этот способ улучшает читаемость кода и уменьшает вероятность ошибок, связанных с использованием временных переменных для обмена значениями.
🔗 Python tricks
В Python можно легко поменять значения двух переменных местами без использования дополнительной временной переменной. Это делает код более компактным и понятным.
Этот способ улучшает читаемость кода и уменьшает вероятность ошибок, связанных с использованием временных переменных для обмена значениями.
🔗 Python tricks
Быстрая смена значений двух переменных без временной переменной
В Python можно легко поменять значения двух переменных местами без использования дополнительной временной переменной. Это делает код более компактным и понятным.
Этот способ улучшает читаемость кода и уменьшает вероятность ошибок, связанных с использованием временных переменных для обмена значениями.
🔗 Python tricks
В Python можно легко поменять значения двух переменных местами без использования дополнительной временной переменной. Это делает код более компактным и понятным.
Этот способ улучшает читаемость кода и уменьшает вероятность ошибок, связанных с использованием временных переменных для обмена значениями.
🔗 Python tricks
Использование оператора _ для игнорирования значений
Когда вы работаете с функциями или циклами, которые возвращают несколько значений, но не все они вам нужны, можно использовать _, чтобы игнорировать ненужные переменные. Это удобно и улучшает читаемость кода.
Использование _ делает код чище и позволяет избежать ненужных переменных, особенно при работе с функциями, возвращающими несколько значений, или в циклах.
🔗 Python tricks
Когда вы работаете с функциями или циклами, которые возвращают несколько значений, но не все они вам нужны, можно использовать _, чтобы игнорировать ненужные переменные. Это удобно и улучшает читаемость кода.
Использование _ делает код чище и позволяет избежать ненужных переменных, особенно при работе с функциями, возвращающими несколько значений, или в циклах.
🔗 Python tricks
Атрибут __all__
Атрибут
Этот атрибут должен содержать список имен, которые будут экспортированы.
Если
Использование
Это способствует лучшей структуре кода и предотвращает неожиданный экспорт внутренних элементов модуля.
Проще говоря,
🔗 Python tricks
Атрибут
__all__
используется для контроля того, какие элементы модуля экспортируются при импорте с помощью from module import *
.Этот атрибут должен содержать список имен, которые будут экспортированы.
Если
__all__
не определен, то при импорте будут экспортированы все имена, не начинающиеся с _
. Использование
__all__
позволяет явно указать автору модуля, какие части модуля являются публичным API, а какие — внутренней реализацией. Это способствует лучшей структуре кода и предотвращает неожиданный экспорт внутренних элементов модуля.
Проще говоря,
__all__
— это простой механизм контроля области видимости при импорте. Он помогает организовать чистый публичный интерфейс модуля.🔗 Python tricks
Запускаем ботов, парсеры и небольшие приложения от 45₽/мес!
Всё включено: поддержка 24/7, простое управление и мгновенная активация.
Сравните тарифы:
▶️ Старт (45₽) - 50MB RAM, 50MB SSD
▶️ Базовый (75₽) - 100MB RAM, 110MB SSD
▶️ Профи (450₽) - 2GB RAM, 3GB SSD (и выше!)
Не переплачивайте! Начните с малого и масштабируйтесь по мере роста.
Перейти к выбору тарифа → @Skriptnull
#PythonХостинг #Хостинг #python #Разработка #Бот
Всё включено: поддержка 24/7, простое управление и мгновенная активация.
Сравните тарифы:
▶️ Старт (45₽) - 50MB RAM, 50MB SSD
▶️ Базовый (75₽) - 100MB RAM, 110MB SSD
▶️ Профи (450₽) - 2GB RAM, 3GB SSD (и выше!)
Не переплачивайте! Начните с малого и масштабируйтесь по мере роста.
Перейти к выбору тарифа → @Skriptnull
#PythonХостинг #Хостинг #python #Разработка #Бот
Использование defaultdict из модуля collections
Модуль collections в Python предлагает полезные структуры данных, одной из которых является defaultdict. Эта структура позволяет автоматически инициализировать значения в словаре для новых ключей, что упрощает код и делает его более читаемым.
Использование defaultdict позволяет избежать необходимости предварительной проверки существования ключа в словаре, что делает код более чистым и эффективным.
🔗 Python tricks
Модуль collections в Python предлагает полезные структуры данных, одной из которых является defaultdict. Эта структура позволяет автоматически инициализировать значения в словаре для новых ключей, что упрощает код и делает его более читаемым.
Использование defaultdict позволяет избежать необходимости предварительной проверки существования ключа в словаре, что делает код более чистым и эффективным.
🔗 Python tricks
Использование itertools.groupby для группировки данных
Модуль itertools в Python предоставляет множество полезных функций для работы с итераторами. Одна из них — groupby, которая позволяет группировать последовательности данных по ключу. Это может быть особенно полезно для анализа и обработки данных.
Использование itertools.groupby позволяет значительно упростить код для группировки данных и сделать его более читабельным.
🔗 Python tricks
Модуль itertools в Python предоставляет множество полезных функций для работы с итераторами. Одна из них — groupby, которая позволяет группировать последовательности данных по ключу. Это может быть особенно полезно для анализа и обработки данных.
Использование itertools.groupby позволяет значительно упростить код для группировки данных и сделать его более читабельным.
🔗 Python tricks
Использование collections.Counter для подсчета элементов в списке
Модуль collections в Python предоставляет класс Counter, который удобно подсчитывает количество вхождений элементов в итерируемом объекте, таком как список или строка. Это позволяет быстро анализировать данные без написания сложного кода.
Использование Counter делает процесс анализа данных более эффективным и удобным, избавляя вас от необходимости писать циклы и дополнительные условные операторы.
🔗 Python tricks
Модуль collections в Python предоставляет класс Counter, который удобно подсчитывает количество вхождений элементов в итерируемом объекте, таком как список или строка. Это позволяет быстро анализировать данные без написания сложного кода.
Использование Counter делает процесс анализа данных более эффективным и удобным, избавляя вас от необходимости писать циклы и дополнительные условные операторы.
🔗 Python tricks
Использование оператора enumerate() для получения индексов при итерации
Оператор enumerate() позволяет не только итерироваться по элементам списка, но и получать индекс каждого элемента в процессе итерации. Это упрощает работу с данными, когда вам нужно одновременно и элемент, и его индекс.
enumerate() делает процесс итерации с доступом к индексам более удобным и эффективным, уменьшая количество кода и повышая его читаемость.
🔗 Python tricks
Оператор enumerate() позволяет не только итерироваться по элементам списка, но и получать индекс каждого элемента в процессе итерации. Это упрощает работу с данными, когда вам нужно одновременно и элемент, и его индекс.
enumerate() делает процесс итерации с доступом к индексам более удобным и эффективным, уменьшая количество кода и повышая его читаемость.
🔗 Python tricks
Использование метода get() для безопасного доступа к значениям в словаре
Метод get() в словарях позволяет безопасно получать значения по ключу, даже если ключ отсутствует, избегая выброса ошибки. Это особенно полезно, если вы не уверены, что ключ существует, и хотите задать значение по умолчанию.
Использование метода get() делает работу со словарями более надежной и упрощает обработку данных, особенно когда отсутствуют обязательные ключи.
🔗 Python tricks
Метод get() в словарях позволяет безопасно получать значения по ключу, даже если ключ отсутствует, избегая выброса ошибки. Это особенно полезно, если вы не уверены, что ключ существует, и хотите задать значение по умолчанию.
Использование метода get() делает работу со словарями более надежной и упрощает обработку данных, особенно когда отсутствуют обязательные ключи.
🔗 Python tricks
🔍Тестовое собеседование на Middle Python в четверг с разработчиком из Авито
25 сентября(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
25 сентября(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
Forwarded from Python tricks | Хитрости Питона
Использование генераторов списков для быстрого создания списков
Генераторы списков (list comprehensions) позволяют создавать новые списки на основе существующих в одну строку. Это значительно упрощает код и делает его более читабельным.
Использование генераторов списков делает код более читаемым и коротким, а также ускоряет выполнение операций с данными.
🔗 Python tricks
Генераторы списков (list comprehensions) позволяют создавать новые списки на основе существующих в одну строку. Это значительно упрощает код и делает его более читабельным.
Использование генераторов списков делает код более читаемым и коротким, а также ускоряет выполнение операций с данными.
🔗 Python tricks
Использование itertools.chain() для объединения нескольких итераторов
Когда вам нужно объединить несколько списков, кортежей или других итерируемых объектов в один, функция itertools.chain() позволяет сделать это эффективно, без необходимости создания временных списков.
Использование itertools.chain() упрощает процесс объединения итерируемых объектов, позволяя вам писать более чистый и эффективный код без необходимости создавать промежуточные списки.
🔗 Python tricks
Когда вам нужно объединить несколько списков, кортежей или других итерируемых объектов в один, функция itertools.chain() позволяет сделать это эффективно, без необходимости создания временных списков.
Использование itertools.chain() упрощает процесс объединения итерируемых объектов, позволяя вам писать более чистый и эффективный код без необходимости создавать промежуточные списки.
🔗 Python tricks