pythonofff | Unsorted

Telegram-канал pythonofff - Python академия

7384

Python академия. Учи Python быстро и легко. По всем вопросам @evgenycarter

Subscribe to a channel

Python академия

⁠Автоматический счетчик во время итераций по коллекциям

Привет. Достаточно часто я наблюдаю ситуации, в которых новички создают "костыли", когда им необходим счетчик во время обхода коллекции. И вот решение проблемы.

Итак, встроенная в Python функция enumerate применяется для итерируемых коллекций (строки, списки, словари и другие) и создает объект, который генерирует кортежи, состоящие из двух элементов – индекса элемента и самого элемента.

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

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Вычисляем размер объектов в памяти

Чтобы вычислить размер какого-либо объекта, можно воспользоваться функцией sys.getsizeof(object[, default]). Поскольку Python написан в полном соответствии с парадигмой ООП, таким объектом может быть все что угодно.

Однако, следует помнить, что хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов.

Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError .

Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора, если конечно объект управляется сборщиком мусора.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Обучение Python-разработке со скидкой до 70%

Сравните и выберите курс по Python по самой выгодной цене в году

⚡ Доступно в рассрочку
⚡ Отзывы учеников
⚡ Рейтинг онлайн-школ
⚡ Промокод от SRAVNI

Выбрать

#реклама 16+
sravni.ru

О рекламодателе

Читать полностью…

Python академия

⁠Кэширование функций

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

Давайте реализуем калькулятор чисел Фибоначчи с использованием кэша. Советую попробовать запустить любую рекурсивную функцию с кэшированием и без него, прирост в скорости замечается сразу.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

🔥 БЕСПЛАТНЫЙ КУРС ПО ВРЕМЕННЫМ РЯДАМ И AI 🔥
Ищете практический и углубленный курс, чтобы освоить временные ряды? Мы создали курс из 5 объемных занятий. Это именно то, что нужно, чтобы прокачаться в одной из самых востребованных аналитических областей абсолютно бесплатно!

📌 Темы занятий:
1. Основы анализа временных рядов
2. Прогнозирование на основе временных рядов с помощью AI
3. Выявление аномалий в данных с помощью нейросетей
4. Применение временных рядов в рекомендационных системах
5. Тенденции и будущее анализа временных рядов с AI

Почему временные ряды? Потому что это одна из центральных тем, они отличаются тем, что:
🧬 1. Очень нужны компаниям - прям прямая необходимость
🧬 2. Очень непредсказуемые - в отличие от CV, где всё понятно, тут итоговая точность нейронки вообще непредсказуемая

🤖 Присоединяйтесь к нашему бесплатному курсу и разберитесь в этой увлекательной теме с нами!

Читать полностью…

Python академия

Switch-конструкция с помощью словаря

Привет, на связи Адриан. Начинающие программисты достаточно часто спрашивают меня про switch-конструкции, а в Python их вобщем-то нет.

Однако существует одно хитрое решение – использовать словарь, где значениями будут функции. В качестве примера напишем словарь, который будет использован для математических операторов.

В этом примере я использовал lambda-функции для упрощения кода, но вместо них можете подставить любые другие. Объясню немного подробнее, lambda – объявление анонимной функции, x и y - принимаемые аргументы, x + y – возвращаемый результат.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Именование среза с использованием функции slice

Работа с множеством значений, которые заданы индексами, может быстро обернуться беспорядком – как в плане поддержки, так и в плане читабельности кода.

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

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Помощь в трудоустройстве в IT-сфере!

В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специалистов. Теперь любой желающий может попробовать себя в IT с полного нуля и начать обучение бесплатно!

Узнайте про дальнейшее трудоустройство в ведущие IT-компании для восполнения кадрового дефицита.

Для этого нужно:

- Перейти по ссылке
- Заполнить анкету и ответить на вопросы (занимает менее 3 минут)
- На основании ваших ответов вы сразу узнаете, подходит ли вам сфера IT и сможете ли вы в ней работать

Перейти на сайт

#реклама 16+
urban-university.ru

О рекламодателе

Читать полностью…

Python академия

3 трюка с itertools

Сегодня мы рассмотрим несколько функций из довольно полезного модуля, позволяющих эффективно работать с итерируемыми объектами. Начнём с очень простой функции – chain. Она позволяет "склеивать" несколько итерируемых элементов в один.

Далее, accumulate. Эта функция немного похожа на reduce, но вместо того, чтобы давать одно окончательное значение, она последовательно применяет функцию, заданную вторым аргументом (в данном случае min), к каждому последующему элементу по порядку: min(11), min(11, 3), min(11, 3, 9) и так далее.

А для того, чтобы создавать комбинации из элементов выбранного итерируемого объекта, вам понадобится функция combinations. Вторым аргументом можно задать длину этой самой комбинации.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Ограничьте использование процессора и памяти

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

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Методов списков list

Напоминаю, списки в Python – упорядоченные последовательности элементов различных типов данных. Списки можно изменять, например, добавлять новые элементы.

1. list.append(x) – добавляет элемент, переданный в качестве аргумента, в конец списка. Этот метод является самым простым и распространённым в коде.

2. list.insert(i, x) – вставляет элемент в переданную позицию. Первый аргумент означает индекс элемента, перед которым будет добавлено новое значения.

Таким образом, list.insert(0, x) вставит элемент в начало списка, а list.insert(len(list), x) эквивалентно записи list.append(x).

3. list.extend(iterable) – расширяет список, добавляя все элементы другой коллекции.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Сила «однострочников» (One-Liners)

Вы устали пробираться между строк кода и теряться в условных конструкциях? Тогда, однострочники Python — это то, что вам нужно

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Учим английский язык вместе с Яндекс Практикумом

Курсы английского языка для начинающих и продолжающих. Для уровней от A1 до B1 📚
Получи бесплатную консультацию и диагностику от наших педагогов.

Занятия в удобное время по индивидуальной программе от 812 руб.
Скидка 20% в Чёрную пятницу на все программы. Сохрани скидку сейчас ❤️

Узнать больше

#реклама 16+
practicum.yandex.ru

О рекламодателе

Читать полностью…

Python академия

Модуль argparse

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

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Пример разделения строки CSV с вводом пользователем

Давайте посмотрим на реальный пример, где пользователь вводит данные CSV, а мы разбиваем их на список строк.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Получи грант на обучение в Центральном университете

Прояви себя, получи грант до 2,8 млн на обучение ИТ и бизнесу в вузе.

Для школьников 10-х и 11-х классов, СПО.

Подать заявку

#реклама
apply.centraluniversity.ru

О рекламодателе

Читать полностью…

Python академия

Explicit Conversion Flag

Флаг явного преобразования используется для преобразования значения поля format перед его непосредственным форматированием.

Это поле можно использовать для переопределения поведения format для какого либо конкретного типа и форматирования значения. В настоящее время распространены два явных флага преобразования:

!r – преобразует значение в строку, используя функцию repr()
!s – преобразует значение в строку, используя функцию str()

В примере, в случае с флагом !r строка 'Hello' будет напечатана с кавычками в поле шириной не менее 20 символов, а в случае с флагом !s – без кавычек (в более удобном для чтения виде).

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Ускоряем код с помощью векторизации

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

Вообще лучший способ ускорить любой цикл – это отказаться от него. В примере выше для работы с функцией my_func мы могли бы вызвать ее в цикле для каждого элемента списка, но гораздо проще использовать vectorize.

По сути, vectorize преобразует функцию таким образом, что она начинает принимать весь вектор целиком, а не отдельный его элемент. Надо помнить, что такой подход не всегда приводит к значительному ускорению.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Высшее образование дистанционно от 5300 ₽/мес.

Поступи в Московский технологический институт сегодня!

— Высшее образование в московском вузе без выезда на сессии.
— Полностью дистанционный онлайн-формат.
— Обучайся дома, на работе, в путешествии.
— Диплом государственного образца.
— 73 направления и программы обучения.
— Программа колледж + вуз без ЕГЭ.

Скидка 10% на обучение при оплате за год.

Перейти на сайт

#реклама 16+
tl.mti.edu.ru

О рекламодателе

Читать полностью…

Python академия

Генерация уникальных идентификаторов

В этот пятничный вечер Адриан подготовил для вас небольшой, но крайне полезный приём, который часто применяется на практике.

Стандартный модуль uuid — быстрый и простой способ сгенерировать UUID (universally unique identifier), глобально уникальный идентификатор.

Так, мы можем создать случайное 128-битное число, которое наверняка будет уникальным. Существует более 2¹²² возможных UUID. Это более 5 ундециллионов, то есть 36 нулей.

Вероятность нахождения дубликатов в заданном наборе крайне мала. Даже при наличии триллиона UUID вероятность того, что среди них есть дубликат, гораздо меньше, чем один к миллиарду.

Вполне недурно для двух строк кода.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Помощь в трудоустройстве в IT-сфере!

В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специалистов. Теперь любой желающий может попробовать себя в IT с полного нуля и начать обучение бесплатно!

Узнайте про дальнейшее трудоустройство в ведущие IT-компании для восполнения кадрового дефицита.

Для этого нужно:

- Перейти по ссылке
- Заполнить анкету и ответить на вопросы (занимает менее 3 минут)
- На основании ваших ответов вы сразу узнаете, подходит ли вам сфера IT и сможете ли вы в ней работать

Перейти на сайт

#реклама 16+
urban-university.ru

О рекламодателе

Читать полностью…

Python академия

Частичное применение

Сегодня поговорим об одном интересном концепте из области функционального программирования. Использовать будем функцию partial из стандартной библиотеки functools.

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

Другими словами, это такая функция, которая принимает другую функцию с несколькими параметрами и возвращает функцию, но уже с меньшим количеством параметров.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Правильным ответом является [1, 2]

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

А для того, чтобы добиться правильного поведения функции, следует воспользоваться ключевым словом None при о

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Срочно нужны 5 педагогов, желающих бесплатно обучиться!

Спрос на услуги профориентологов с 2019 года вырос в 2 раза.

В связи с развитием технологий, автоматизации и искусственного интеллекта появляется множество новых специальностей и исчезают старые.

Рынок труда меняется слишком быстро, чтобы родители могли помочь своим детям. Поэтому люди обращаются за помощью к специалистам.

⚡ Уже около 40% подростков не имеют представления, на кого идти учиться;

⚡ 37% не понимают смысла новых профессий;

⚡ В школах профориентация отсутствует или проводится по устаревшим тестам.

К 2026 году прогнозируют рост спроса на услуги профориентологов ещё в 3 раза. Но профессионалов катастрофически не хватает.

Регистрируйтесь на бесплатное 3-дневное обучение от Дины Муштановой, президента международной ассоциации экспертов (Франция):

Зарегистрироваться

#реклама 16+
ipe-academy.com

О рекламодателе

Читать полностью…

Python академия

💡Что стоит за великими открытиями и масштабными проектами? Конечно, импульс! 

Импульс Т1 — ИТ-конференция для тех, кто ценит точность, стремится к новым открытиям и жаждет творческого огня. 

🔥Вас ждут: 

🟣вдохновляющие лекции от ведущих специалистов
🟣интересные дискуссии экспертов рынка
🟣нетворкинг и вечеринка late night lab
🟣питчи идей и еще много интересного

О чем поговорим?

🔹Как создавать условия для развития бизнеса и выращивать высокотехнологичных лидеров рынка?
🔹Как новые технологии помогают решать актуальные проблемы в различных отраслях?
🔹Где находится точка рождения новых знаний и что служит генератором новаторских идей?
🔹Как новые идеи изменят самого человека – его тело, мозг и душу?

🎤Среди спикеров конференции: Максут Шадаев, Василий Шпак, Евгений Абакумов, Наталья Касперская, Алексей Паламарчук, Игорь Ашманов и другие.

Регистрируйтесь прямо сейчас!

#реклама
О рекламодателе

Читать полностью…

Python академия

Получи грант на обучение в Центральном университете

Прояви себя, получи грант до 2,8 млн на обучение ИТ и бизнесу в вузе.

Для школьников 10-х и 11-х классов, СПО.

Подать заявку

#реклама
apply.centraluniversity.ru

О рекламодателе

Читать полностью…

Python академия

Как сделать запрос DELETE

Как следует из названия, если вы хотите удалить ресурс из API, вы можете использовать запрос DELETE. Удалим товар с идентификатором, равным 21.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Множественный вызов метода randint()

Для этого кода повторение метода random.randint() дает нам разные случайные целые числа для каждого вызова в пределах от 10 до 100.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…

Python академия

Новые бесплатные курсы в канале Selectel Newsfeed.

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

Вступайте в сообщество IT-специалистов в Telegram от Selectel.

Подписаться

#реклама 16+
О рекламодателе

Читать полностью…

Python академия

Импорт as

Мы можем определить собственное имя для импортированного модуля, используя оператор import as.

Подписывайтесь на канал 👉@pythonofff

Читать полностью…
Subscribe to a channel