Senior Python Developer @seniorpy Channel on Telegram

Senior Python Developer

@seniorpy


№ 4931117861
Публикуем интересные/полезные фичи/библиотеки языка.

По вопросам сотрудничества: @adv_and_pr

Канал на бирже:
https://telega.in/c/seniorpy

Senior Python Developer (Russian)

Вы когда-нибудь задумывались о том, как стать опытным разработчиком Python? Тогда канал "Senior Python Developer" (@seniorpy) - именно то, что вам нужно!

На этом канале мы публикуем интересные и полезные фичи и библиотеки языка Python, которые помогут вам стать настоящим профессионалом в этой области.

У нас вы найдете самые актуальные новости и тренды в мире Python, а также сможете обсудить их с нашими единомышленниками.

Есть вопросы о сотрудничестве или хотите предложить свои идеи? Обращайтесь к нашему администратору @adv_and_pr.

Присоединяйтесь к нам уже сегодня и станьте частью сообщества Senior Python Developer!

Канал на бирже:
https://telega.in/c/seniorpy

Senior Python Developer

16 Feb, 19:49


Определяем язык текста

В данном посте покажем, как с помощью библиотеки langdetect определить язык текстового фрагмента. Для начала необходимо поставить библиотеку - pip install langdetect.

Заметим, что код импортирован на питон из гугловской библиотеки language-detection, поэтому качество распознавания языка находится на уровне.

По умолчанию поддерживается 55 языков.

Senior Python Developer

16 Feb, 14:12


Крутая программа для тех, кто уже работает с Linux и хочет погрузиться DevOps.

В двух словах: программа на 2 месяца, ты учишься, тебе еще и платят. Начинка: начинающий и продвинутый курс по Linux, погружение в DevOps. Обучение с практикой, лабораторными и под контролем экспертов из K2 Сloud.

Подробнее можно узнать на сайте

Senior Python Developer

16 Feb, 12:32


Нелокальные переменные

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

Давайте на примере рассмотрим, как нелокальная переменная работает в Python.

Для этого нам понадобится ключевое слово nonlocal.

В приведенной выше программе есть вложенная функция inner(). Для создания нелокальной переменной мы используем ключевое слово nonlocal. Функция inner() определяется внутри функции outer().

Senior Python Developer

15 Feb, 21:26


#вопросы_с_собеседований
Как правильно записать данные в файл? Что может пойти не так в ином случае?

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

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

Senior Python Developer

14 Feb, 20:39


Метод items()

Метод Dictionary items() возвращает итератор типа dict_items. Вы можете перебирать каждый ключ:значение в словаре. Также тип dict_items поддерживает динамическое обновление словаря.

Senior Python Developer

13 Feb, 20:47


Как узнать текущую директорию?

Чтобы узнать, в какой директории мы сейчас находимся, можно использовать метод getcwd() из модуля os module.

Senior Python Developer

13 Feb, 15:04


НЕ изи войти в айти! 😬

Тебя не бесят «гуру», которые обещают зп от 300к после двух недель на их легендарном курсе по Python за 150к? 😂 - Меня ДА!

Забудь про «развалить айти рыночек своим умищем»

Чтобы стать программистом, надо пропахать как чёрт за партой хотя бы годик!

А чтобы не свихнуться в одиночку, залетай в чат начинающих Python-щиков, где ты получишь:

1️⃣ Разбор сложных вопросов простым языком
2️⃣ Поддержку тех, кто тоже с 0 учит Python, и не боится показаться глупым
3️⃣ Регулярные плюшки в виде стримов от препода с 15-ти летним опытом

➡️А еще, в закрепе есть БЕСПЛАТНЫЙ вводный курс по Python, ну это так, к слову))

Короче, всё для прокачки! Залетай — ссылка на чат (тык)

Senior Python Developer

13 Feb, 10:13


Как прочитать файл объемом 8 ГБ на Python с помощью компьютера с 2 ГБ ОЗУ?

Это решение работает для любых больших файлов.

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

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

Senior Python Developer

12 Feb, 20:10


Сортировка словаря по значениям

С помощью приведенного выше фрагмента кода вы сможете с легкостью отсортировать свой словарь.

Senior Python Developer

12 Feb, 13:04


Вам приглашение на митап в честь Дня рождения Python!

В четверг, 20 февраля, в 18:00 ждем вас в московском офисе Сбера на Python Birthday Meetup.

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

🟢Лень как искусство, или зачем программисту LLM?
Никита Замулдинов из Сбера расскажет, как превратить искусственный интеллект в своего личного ассистента, делегировать скучные задачи и расширить собственные возможности. Вас ждут реальные кейсы и демонстрация AI-агентов в действии.

🟢Люблю и ненавижу Asyncio
Николай Хитров из Точки разберет новые и старые «грабли» Asyncio и расскажет о best practices его использования.

🟢От хаоса к порядку: Pydantic в борьбе с инцидентами безопасности
Александр Глазков из Сбера расскажет, как и почему Pydantic изменил жизнь команды, а также поделится тонкостями его использования.

А также в программе:
Нетворкинг, фуршет и подарки.

📍 Офлайн + онлайн
Регистрация на мероприятие и подробности

Senior Python Developer

12 Feb, 10:25


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

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

https://github.com/rafaelmardojai/blanket/

Senior Python Developer

11 Feb, 21:05


Метод str.swapcase()

Метод str.swapcase() возвращает копию строки str с прописными символами, преобразованными в строчные и наоборот.

Другими словами метод меняет регистр символов в строке str.

Senior Python Developer

10 Feb, 20:56


5 полезных библиотек Python (с примерами)

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

Смотреть статью

Senior Python Developer

10 Feb, 14:16


Наткнулись на промо новой облачной конференции. Пошли подробнее узнавать, кто её организует — оказалось, это создатель первого в России публичного облака собственной разработки.

У ребят планируется много технических докладов: от обзоров новых типов сетевых дисков до приоритетов бизнеса в области ИТ — звучит интересно.

Подробнее можете посмотреть тут

Senior Python Developer

09 Feb, 21:02


Узнаем точное время с помощью Python

Все мы в детстве звонили по номеру 100 и узнавали точное время. Python позволяет сэкономить наши деньги и при помощи модуля time выдает нам текущее время.

Senior Python Developer

07 Feb, 15:22


Перечисления

Перечисление (enumeration) — это набор имён, привязанных к уникальным неизменным значениям. Python поддерживает работу с перечислениями, с их помощью удобно хранить списки констант.

Члены одного перечисления можно сравнивать, а также обходить с помощью циклов. Подробнее о перечислениях можно почитать в документации: https://docs.python.org/3/library/enum.html

Senior Python Developer

06 Feb, 13:10


#вопросы_с_собеседований
В чем разница между append и extend?

Ответ:
append добавляет значения в список, а extend добавляет в список значения из другого списка.

Senior Python Developer

06 Feb, 07:59


Если у вас нет работы программистом, просто найдите её =)

Знаю, звучит как "если вы бездомный, просто купите себе дом", но реальность до скучного проста. Если офферов у вас нет, значит вы что-то делаете не так

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

Я не "скиллбокс", и не обещаю, что будет просто. Я не говорю, что будет приятно. Но я обещаю, что взорву вам мозг и дам чёткий план как найти работу разработчиком за 3-6 месяцев

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

Вот вам ссылка ещё раз, подписывайтесь, скоро стартуем

Senior Python Developer

06 Feb, 06:02


Метод index()

Метод index - это встроенный метод списка, который позволяет узнать индекс или позицию элемента в последовательности.

Этот метод ищет элемент в списке и возвращает индекс, соответствующий его значению, в противном случае возникает ошибка ValueError.

Senior Python Developer

05 Feb, 19:53


Узнаём версию Python

В пакете sys присутствует переменная version_info, которая хранит в себе версию Python, с помощью которого запущена программа.

Senior Python Developer

05 Feb, 15:36


💚 Авито запускает Weekend Offer для опытных DS-инженеров! Ускоренный отбор за выходные и возможность попасть в одну из пяти команд: автомодерация, монетизация, поисковое ранжирование, AI Lab и вертикальные команды DS.

Вас ждет:
— конкурентная зарплата и удаленка по всей России;
— реальные задачи на большом масштабе — разработка алгоритмов для проверки объявлений, внедрение ML-моделей, оптимизация процессов и DS-поддержка;
— участие в разработке новых продуктов — предлагаем для этого мощное железо и бюджет на обучение;
— сильное IT-комьюнити, которое любит опенсорс.

🚀Регистрируйтесь до 27 февраля и развивайте крупнейший в мире сервис объявлений: https://u.to/mDy6IQ

Senior Python Developer

05 Feb, 14:56


Получение размера изображения

В следующей программе мы будем читать изображение, а затем распечатывать его размер, используя свойство size объекта Image.

Senior Python Developer

04 Feb, 20:50


Разница между двумя массивами

Выше представлена функция, которая возвращает разницу между двумя массивами. Создает set из b и сохраняет только те значения, которые не содержатся в b.

Senior Python Developer

04 Feb, 17:01


Хотите создать устойчивое к нагрузкам масштабируемое приложение?

Ключевой элемент при проектировании микросервисов – правильная интеграция брокеров сообщений с микросервисной архитектурой.

На открытом вебинаре «Как эффективно использовать брокеры сообщений в микросервисной архитектуре?» вы научитесь:

- Повышать производительность системы, настраивать взаимодействие между микросервисами, правильно работать с очередями сообщений

- Связывать различные слои приложений с помощью брокеров сообщений

- Проектировать решения с учётом масштабируемости и отказоустойчивости

- Эффективно управлять инфраструктурой сообщений RabbitMQ и Apache Kafka

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

Будет интересно: бэкенд и фулстек-разработчикам, системным аналитикам, девопс-инженерам.

Спикер: Сергей Прощаев, Java-разработчик в ПАО «Сургутнефтегаз».

Бонус! Всем участникам – скидка 5% и эксклюзивные материалы от спикера.

6 февраля, 19:00 МСК

Записаться - https://otus.pw/w53K8/?erid=2W5zFHDk1RS

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Senior Python Developer

03 Feb, 18:14


Метод str.endswith()

Метод str.endswith() возвращает True, если строка str заканчивается указанным суффиксом suffix, в противном случае возвращает False.

Параметры:
suffix - объект поддерживающий итерацию (кортеж, символ или подстрока).
start - int, индекс начала поиска, по умолчанию 0, необязательно.
end - int, индекс конца поиска, по умолчанию len(str), необязательно.

Senior Python Developer

03 Feb, 14:58


🛡Как защитить бизнес от утечек? Присоединяйтесь к открытому вебинару и узнайте, как выстроить многоуровневую защиту. 

5 февраля в 20:00 мск на открытом вебинаре вы узнаете:
- Предмет защиты и специфику среды. Кратко разберём, какие особенности Docker требуют особого внимания с точки зрения безопасности.
- Практические рекомендации по окружению. Поговорим о том, как правильно настраивать среду выполнения для Docker, чтобы минимизировать риски.
- Безопасную сборку образов. Узнаете, на что смотреть при создании Docker-образов и как не допустить критических уязвимостей на этапе сборки.

Регистрируйтесь на открытый урок в преддверие старта курса «Информационная безопасность. Professional». Все участники получат скидку на обучение!

👉Узнать больше: https://otus.pw/ImPa/?erid=2W5zFHou5eG 

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Senior Python Developer

03 Feb, 13:55


Метод str.isalnum()

Метод str.isalnum() возвращает True, если все символы в строке являются буквенно-цифровыми и есть хотя бы один символ, в противном случае False.

Senior Python Developer

02 Feb, 19:50


Как реализуется наследование классов в Python?

В приведенном ниже примере класс Audi является наследником Car. И вместе с этим наследуются методы экземпляра родительского класса.

Senior Python Developer

01 Feb, 18:27


Пакет schedule

schedule позволяет планировать выполнение каких-либо задач на определённый промежуток времени. В примере мы заставляем программу каждую секунду вызывать нашу функцию job.

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

Документация доступна по ссылке:
https://schedule.readthedocs.io/en/stable/

Senior Python Developer

31 Jan, 19:08


Генерируем произвольный адрес электронной почты

С помощью пакета mimesis мы можем с легкостью получить рандомный адрес электронной почты с определенным доменом(в нашем случае mаil. ru).

Senior Python Developer

31 Jan, 14:55


Вебинар «Как стать облачным экспертом и повысить свою ценность на ИТ-рынке»
 
Узнайте, как повысить экспертность и увеличить свою ценность для ИТ-рынка. 
Дата и время: 14 февраля, 17:00. 
 
Основные темы вебинара 
·Российские облачные технологии 
·Облако в личных ИТ-проектах 
·Программа бесплатного курса Сloud Native DIY Advanced
·Продвижение в карьере 
·ИТ-сообщество 

Вебинар будет полезен ИТ-специалистам middle- и senior-уровня. 
 
Регистрируйтесь, если хотите разрабатывать стратегии миграции в облако, управлять ИТ-инфраструктурой как кодом, работать с базами данных и кластерами Kubernetes, использовать инструменты кибербезопасности для защиты инфраструктуры.   

Бонус для участников  

Зарегистрируйтесь на вебинар, пройдите курс и получите сертификат до 25 февраля, и мы выдадим вам мерч и бонусы на работу с VK Cloud, а также пригласим на экскурсию в первый офис VK в Доме Зингера в Санкт-Петербурге. 
 
Зарегистрироваться

Senior Python Developer

30 Jan, 19:38


Метод truncate()

Метод truncate() модуля os обрезает файл, соответствующий пути path, так, чтобы он имел длину не более length байтов.

Синтаксис:
os.truncate(path, length), где
path - str, путь в файловой системе до файла,
length - int, размер в байтах.

Подробнее можно почитать здесь.

Senior Python Developer

28 Jan, 18:54


Узнаем сколько сейчас человеку лет по дате рождения с помощью Python

Для этого можно использовать модуль datetime.

Пример запуска программы:

Введите дату рождения (дд.мм.гггг): 01.01.1990
Вам сейчас 35 лет

Senior Python Developer

27 Jan, 20:21


Поймай меня, если сможешь: руководство по обработке исключений в Python

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

Смотреть статью

Senior Python Developer

26 Jan, 18:39


SQLAlchemy

Библиотека SQLAlchemy в Python используется для работы с базами данных.
Она предоставляет удобный и гибкий способ взаимодействия с различными типами баз данных, включая SQLite, MySQL, PostgreSQL и многие другие.

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

В этом примере мы создаем запрос, который возвращает все строки из таблицы users, у которых либо имя равно "John", либо возраст равен 25.

Senior Python Developer

25 Jan, 20:09


Propan — Python фреймворк для написания микросервисов с использованием брокеров сообщений

Смотреть статью

Senior Python Developer

24 Jan, 19:45


Pyxel

Игровой движок для Python в стиле ретро. Благодаря своей простоте, вдохновленной старыми игровыми консолями (например, палитра состоит всего из 16 цветов, и только 4 звука могут быть проиграны одновременно), вы можете легко создавать игры в стиле пиксель-арт. Имеются инструменты для создания музыки и графики, а также поддержка ввода с джойстика.

Установка:
pip install -U pyxel

Github проекта: https://github.com/kitao/pyxel/blob/main/doc/README.ru.md

Senior Python Developer

23 Jan, 20:19


Генерируем произвольный адрес электронной почты

С помощью пакета mimesis мы можем с легкостью получить рандомный адрес электронной почты с определенным доменом(в нашем случае mаil. ru).

Senior Python Developer

22 Jan, 18:30


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

Обычный метод деления имеет сложность O(logN), но эту задачу можно решить со сложностью O(v), где v — количество цифр числа в двоичной форме.

Подробнее ознакомиться с тем как работает данный трюк можно здесь.

Senior Python Developer

21 Jan, 19:48


#вопросы_с_собеседований
Объясните функции help() и dir() в Python.

Функция help() отображает строку документации и справку для ее аргумента. Пример по при вызове с функцией copy на картинке.

Функция dir() отображает все члены объекта (любого типа). Например:
dir(copy.copy)
# ['__annotations__', '__call__', '__class__', '__closure__', ...

Senior Python Developer

20 Jan, 18:24


tqdm

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

from tqdm import tqdm
from tqdm.notebook import tqdm # для использования в Jupyter Notebook

for i in tqdm(range(10000)):
...


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

Senior Python Developer

20 Jan, 15:00


Офер в Яндекс для опытных бэкендеров за два дня

15–16 февраля приглашаем бэкендеров с опытом работы от пяти лет получить офер в Яндекс через multitrack за 2 дня. Достаточно пройти несколько технических секции 15 февраля, чтобы уже 16-го получить офер и выбрать три команды, к которым вам было бы интересно присоединиться.

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

Узнать подробности и зарегистрироваться.

Senior Python Developer

19 Jan, 18:34


Строим точечную диаграмму с помощью Python

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

Результат данного кода представлен в посте на картинке ниже.

Senior Python Developer

18 Jan, 20:43


Распределение памяти в Python: сколько и в каких случаях занимают типы данных

В этом материале разберем, как устроено выделение памяти под объекты в Python. Потом кратко о том, как работает очистка памяти от неиспользуемых объектов. И, наконец, о разнице в занимаемой памяти на примере типов list, dict и tuple.

Смотреть статью

Senior Python Developer

16 Jan, 18:44


FuzzyWuzzy

Множество раз вам могло прийти в голову реализовать “размытую” функцию поиска для вашей программы, которая в процентах может сравнивать строки. FuzzyWuzzy предоставляет готовое и лёгкое решение.

В первом примере кода на картинке с помощью fuzz.ratio мы сравниваем две строки и получаем ответ 83, означающий, что они совпадают на 83%.

Если у вас есть список строк, и совпадения необходимо искать во всех строках, FuzzyWuzzy поможет выделить наиболее похожие. Это мы и делаем во втором примере, сравнивая строки data visualisation и custom behavior со строками из arr. При этом в функцию process.extract в качестве параметра также передаётся limit, задающий, сколько значений мы хотим получить.

Senior Python Developer

16 Jan, 15:14


Узнай грейд и рыночную зарплату + получи план развития бесплатно

На связи ШОРТКАТ. Мы провели 300+ собеседований с менторами из бигтеха, собрали ключевые вопросы с собесов и сделали тест, который поможет оценить навыки.

Вот как это работает:

1. Ты проходишь экспресс-тест за 20 минут или его расширенную версию

2. Бронируешь звонок для презентации обратной связи по ответам — можем встретиться уже на следующий день!

3. К созвону проверим ответы, чекнем СV и на основе этого оценим твой грейд.

Ещё подскажем зарплату в рынке, построим план развития до следующего уровня и расскажем про наш новый продукт, который поможет получить выгодный оффер в 2025 году.

Переходи в бота и проходи тест бесплатно, а дальше расскажем, что и как  👉@shortcut_python_bot

Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqwA35MD

Senior Python Developer

16 Jan, 12:12


Функция monotonic()

Функция monotonic() модуля time возвращает значение, в долях секунды "монотонных" часов, то есть часов, которые не могут двигаться назад, т. е. не зависят от корректировки/обновления системных часов.

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

Функция time.monotonic() идеально подходит для измерения времени выполнения программ большой длительности так как не зависит от корректировки системных часов.

Функция time.monotonic_ns() похожа на time.monotonic(), но возвращает время в наносекундах. Работает не на всех платформах.

Senior Python Developer

15 Jan, 15:35


Узнаём кодировку текста

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

Пакет chardet как раз был создан для работы с кодировками. Его метод detect выдает предполагаемую кодировку с точностью от 0 до 1.

В примере на картинке мы сделали запрос к серверу, получили ответ, взяли его содержимое и проверили кодировку через метод detect.

Senior Python Developer

14 Jan, 17:10


Открываем веб-сайт в своем веб-браузере с помощью Python

Модуль webbrowser предоставляет высокоуровневый интерфейс, позволяющий отображать пользователям веб-документы.

Документация доступна по ссылке.

Senior Python Developer

13 Jan, 12:45


Перемешиваем буквы в строке

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

Senior Python Developer

12 Jan, 15:34


LeetCode теперь в Telegram!

LeetCode — это сайт, который позволяет быстро готовиться к техническим собеседованиям по программированию. Там публикуются задачи с собеседований в Google и Microsoft с решениями.

Подписывайтесь: @leetcode

Senior Python Developer

11 Jan, 19:28


Получаем текущее имя пользователя в Python

Модуль ОС в Python предоставляет функции для взаимодействия с операционной системой. ОС входит в стандартные служебные модули Python. Этот модуль предоставляет портативный способ использования функций, зависящих от операционной системы.

Метод os.getlogin() в Python используется для получения имени пользователя, вошедшего в систему на управляющем терминале процесса.

Senior Python Developer

10 Jan, 20:39


Сортировка вставками

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

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

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

Время сортировки вставками в среднем равно O(n²), где n — количество элементов списка.

Senior Python Developer

09 Jan, 19:31


Преобразование WORD в PDF с помощью Python

Устали от необходимости использовать онлайн-конвертеры docx в PDF с дрянным интерфейсом и ограничениями на конвертацию, тогда начинайте пользоваться модулем docx2pdf.

Установка модуля - pip install docx2pdf

Подробнее можно ознакомиться здесь.

Senior Python Developer

09 Jan, 15:04


Учишь Python, но как дело доходит до собственного кода — всё, кирдык? 😥

На форумах только одно: «Больше практиковаться!» А толку? Ноль понимания и никакой поддержки от профи

Плавали - знаем)) Поэтому специально для тебя - чат Python-щиков 🤝

Что получишь?

1️⃣ Сможешь задавать любые вопросы без страха и осуждения и получать ответы за минуты, а не часы поиска в инете
2️⃣ Регулярные плюшки в виде стримов от препода с 15-ти летним опытом
3️⃣ Общение с единомышленниками и заряд мотивации

➡️ А еще, забирай в закрепе БЕСПЛАТНЫЙ вводный курс по Python

Короче, всё для прокачки! Залетай к нам — ссылка на чат (тык)

Senior Python Developer

07 Jan, 18:14


Метод get у словарей

У словарей есть метод get, который возвращает значение по переданному ключу.

Если такого ключа в словаре нет, исключение не выбрасывается, а возвращается значение по умолчанию, которое передаётся вторым аргументом, или же None, если второй аргумент не передан.

В примере мы не передаём второй аргумент, и в переменную name попадает None. Полезнее было бы передать ещё какую-нибудь строку в метод get, и она бы подставилась в name.

Senior Python Developer

06 Jan, 18:16


Валидаторы данных

Не стоит писать собственные регулярные выражения для валидации почты и URL.

Модуль validators даёт возможность использовать уже готовые валидаторы для самых распространенных задач. Документация доступна здесь.

Senior Python Developer

06 Jan, 15:00


⚡️ В сети начали массово сливать курсы и книги известных онлайн школ

Вот отсортированная база с тонной материала(постепенно пополняется):

БАЗА (4687 видео/книг):

(363 видео, 87 книги) — Python
(415 видео, 68 книги) — Frontend
(143 видео, 33 книги) — ИБ/Хакинг
(352 видео, 89 книги) — С/С++
(343 видео, 87 книги) — Java
(176 видео, 32 книги) — Git
(293 видео, 63 книги) — C#
(174 видео, 91 книги) — DevOps
(167 видео, 53 книги) — PHP
(227 видео, 83 книги) — SQL/БД
(163 видео, 29 книги) — Linux
(107 видео, 43 книги) — СисАналз
(181 видео, 32 книги) — Go
(167 видео, 43 книги) — Kotlin/Swift
(112 видео, 24 книги) — Flutter
(137 видео, 93 книги) — DS/ML
(113 видео, 82 книги) — GameDev
(183 видео, 37 книги) — UI/UX
(129 видео, 73 книги) — QA
(213 видео, 63 книги) — Rust
(121 видео, 24 книги) — Ruby

Скачивать ничего не нужно — все выложили в Telegram

Senior Python Developer

06 Jan, 14:13


Конвертируем словарь в список в Python

Благодаря следующему примеру кода с картинки мы можем с легкостью преобразовать наш в словарь в список.

Senior Python Developer

05 Jan, 18:44


Быстрая сортировка

Быстрая сортировка (quicksort) — это один из наиболее известных и широко применяемых алгоритмов сортировки. Она основана на использовании стратегии "разделяй и властвуй".

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

Мы рекурсивно применяем быструю сортировку к списку элементов, которые меньше и больше опорного элемента. Это продолжается до тех пор, пока не останется список, который нужно сортировать. В конце, мы объединяем отсортированные списки вместе.

Senior Python Developer

04 Jan, 18:12


Как сделать из Python-скрипта исполняемый файл

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

Смотреть статью

Senior Python Developer

31 Dec, 22:58


с новым годом!!

Senior Python Developer

30 Dec, 16:51


Переводим mp3 в mov

Для перевода формата аудио из mp3 в mov вам понадобится использовать специализированные библиотеки для обработки аудио файлов в Python. Одной из таких библиотек является FFmpeg.

В этом примере мы используем функцию input() из библиотеки ffmpeg для указания входного файла, а затем функцию output() для указания выходного файла. Затем мы запускаем процесс конвертации с помощью функции run().

Senior Python Developer

28 Dec, 20:42


Узнаем сколько всего опредленных букв в строке

Один из способов узнать количество определенных букв в строке максимально быстрым методом – использовать метод count для строки. Этот метод принимает символ или подстроку и возвращает количество их вхождений в строку.

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

Senior Python Developer

27 Dec, 20:40


exceptions

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

В данном примере кода, операция x = 10 / 0 вызовет исключение ZeroDivisionError, так как нельзя делить на ноль. Однако благодаря конструкции try и except, программа не завершится с ошибкой. Вместо этого будет выведено сообщение «Произошла ошибка деления на ноль!».

Senior Python Developer

26 Dec, 18:31


Бинарный поиск

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

В этом примере функция binary_search принимает отсортированный массив arr и искомый элемент target. Она ищет элемент в массиве и возвращает его индекс, если он найден, и -1, если элемент отсутствует. Каждая итерация сужает диапазон поиска путем сравнения среднего элемента с искомым элементом и сдвига границ поиска в соответствии с результатом сравнения.

Senior Python Developer

25 Dec, 19:46


Задача

У вас есть девять цифр: 1, 2, …, 9. Именно в таком порядке. Вы можете вставлять между ними знаки «+», «-» или ничего. У вас будут получаться выражения вида 123+45-6+7+89. Найдите все из них, которые равны 100.

Мне кажется, в таком виде его проще всего и писать и читать и тестировать. Тут у меня три функции: all_combinations — итератор, который выдает все числа для операций (в терминах задачи: вставляет пустые места); all_signs — выдаёт все возможные сочетания знаков + и - заданной длинны (для единообразия, это тоже итератор с рекурсией); perform_operations — выполняет операции.

Тут, конечно, просится решение, избавленное от if-ов и кодирования операций с помощью символов. Но это решение будет более громоздким, о нём можно рассказать, но и писать, и читать его дольше.

Senior Python Developer

24 Dec, 18:39


Введение в машинное обучение с помощью scikit-learn (перевод документации)

Смотреть статью

Senior Python Developer

23 Dec, 20:24


PyTorch

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

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

При этом мы используем функцию потерь CrossEntropyLoss, которая подходит для задач классификации, и оптимизатор SGD.

Senior Python Developer

22 Dec, 18:29


Построение горизонтальной гистограммы с помощью seaborn

Слева представлен код для построения гистограммы, справа результат работы нашей программы.

Senior Python Developer

21 Dec, 17:16


Использование речевых технологий Яндекса на примере аудиосообщений Telegram или чат-бот для распознавания аудиосообщений

Смотреть статью

Senior Python Developer

20 Dec, 18:28


Библиотека Feather

Feather — это библиотека для эффективного чтения и записи таблиц данных в двоичный формат. Она использует формат Apache Arrow для сериализации данных, что позволяет быстро читать и записывать данные без потери информации.

В этом примере мы использовали две основные функции библиотеки:
- feather.write_dataframe(): записывает таблицу данных в файл формата Feather.
- feather.read_dataframe(): читает таблицу данных из файла формата Feather.

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

Senior Python Developer

19 Dec, 17:49


Просмотр всех файлов в папке с помощью Python

В этом примере мы указываем путь к папке, которую нам нужно просмотреть, с помощью переменной folder_path.

Затем мы вызываем функцию os.listdir(), которая вернет список всех файлов и папок в указанной папке. Мы проходим циклом for через этот список и выводим на экран имена файлов.

Senior Python Developer

19 Dec, 15:11


Обучите свою первую ML-модель!

Интенсив для начинающих разработчиков ML «Машинное обучение на службе Data Science» от Otus.

Научитесь решать задачи классификации методами ML

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

👉 Регистрация: https://otus.pw/1kC2/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Senior Python Developer

19 Dec, 12:14


Работаем с датой и временем

С помощью следующего фрагмента кода вы сможете с легкостью узнать год/месяц/день/час/минуту/секунду настоящего времени.

Senior Python Developer

18 Dec, 17:55


@cached_property: Кешируем результат функции как атрибут

В Python 3.8 в модуле functools появился новый мощный декоратор - @cached_property. Он может превратить метод класса в свойство, значение которого вычисляется один раз, а затем кэшируется как обычный атрибут на протяжении всего существования экземпляра.

В приведенном выше коде мы оптимизировали метод area через свойство @cached_property. Таким образом, нет повторных вычислений для circle.area одного и того же неизменного экземпляра.

Senior Python Developer

18 Dec, 15:04


Хотели узнать больше про инженерную команду Selectel?
Спешим познакомить вас с новым проектом ребят!

На этой страничке вы найдете:

— Ключевые принципы, на которые инженеры Selectel опираются в работе
— Подробную информацию о жизни ребят в компании: как устроены процессы и какие технологии используются
— Чем живут технические комьюнити

А также познакомитесь с базой знаний инженеров: докладами и статьями на Хабре!

Скорее переходите и читайте😉

Реклама, АО «Селектел», ИНН: 7810962785, ERID: 2VtzqvmVXKw

Senior Python Developer

18 Dec, 14:02


Управление экспортами

В некоторых языках имеются очень чёткие механизмы экспорта из модулей переменных, методов, интерфейсов. К примеру в Go экспортируются только сущности с именами с большой буквы. В Python другая картина — экспортируется всё. Но только не при использовании атрибута __all__.

В примере на картинке экспортируется только функция hja. А если оставить атрибут __all__ пустым, при попытке экспорта из модуля ничего не будет экспортировано, но возникнет ошибка AttributeError.

Senior Python Developer

17 Dec, 15:02


Преобразование PNG в PDF

Для начала установим библиотеку img2pdf - pip install img2pdf.

img2pdf— это пакет Python с открытым исходным кодом для преобразования изображений в формат pdf.

Подробнее ознакомиться с библиотекой img2pdf можно здесь.

Senior Python Developer

17 Dec, 13:15


Подготовка к Новому году – это волнительно и приятно.
Но давайте совместим приятное с полезным.

Например, создадим телеграм-бот для новогодних поздравлений!

18 декабря на вебинаре «Телеграм-бот своими руками» вы узнаете:
- Как устроен телеграм-бот
- Как создать телеграм-бот на сервере Telegram
- Как написать бэкенд для телеграм-бота на базе фреймворка Aiogram

Мастер-класс проведёт Кирилл Панфилов, преподаватель OTUS, классный программист и автор ютуб-канала [dirty-python]

Приглашаем начинающих Python-разработчиков, разработчиков на Jave и других языках, а также всех, кто интересуется разработкой и IT.

Результаты вебинара: функционирующий бот, прокачка навыков программирования на Python, доступ к закрытому сообществу,  а ещё – скидка на курсы и полезные материалы.

18 декабря, 19:00 МСК

Записаться на вебинар - https://otus.pw/dvll/?erid=LjN8K7hvn

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Senior Python Developer

17 Dec, 10:51


Как можно объявить несколько присваиваний в одном выражении?

Оба варианта на картинке. В первой строке мы присваиваем переменным a, b, c соответственно значения 3, 4, 5, а во второй строке все переменные получают значение 3.

Senior Python Developer

16 Dec, 19:22


Получаем историю браузера 😏

browser-history— это простой, не требующий никаких зависимостей, удобный для разработчиков пакет Python для извлечения (почти) всей истории любого браузера на (почти) любой платформе.

Документация пакета лежит здесь.

Senior Python Developer

15 Dec, 19:41


Передаём содержимое словаря

Две звездочки перед словарём позволяют передать его содержимое в функцию как аргументы. При этом ключи словаря — имена аргументов.

Это полезно при обработке словарей, а также для написания функций-обёрток.

Senior Python Developer

14 Dec, 17:18


Превращаем PDF файл в аудиокнигу

Для выполнения данной задачи нам понадобятся 2 библиотеки: pyttsx3 и PyPDF2.
Первая потребуется для преобразования текста в речь.
Вторая - для работы с PDF-файлами.

Подробнее с данным примером вы можете ознакомиться здесь.

Senior Python Developer

09 Dec, 18:12


🐍 3 классических паттерна проектирования в Python: синглтон, декоратор и итератор

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

https://proglib.io/p/3-luchshih-patterna-proektirovaniya-v-python-singlton-dekorator-i-iterator-2022-02-03

Senior Python Developer

09 Dec, 15:00


Учишь Python, но как дело доходит до собственного кода — всё, кирдык? 😥

На форумах только одно: «Больше практиковаться!» А толку? Ноль понимания и никакой поддержки от профи

Плавали - знаем)) Поэтому специально для тебя - чат для Python-щиков 🤝

Что получишь?

1️⃣ Сможешь задавать любые вопросы без страха и осуждения и получать ответы за минуты, а не часы поиска в инете
2️⃣ Регулярные плюшки в виде стримов от препода с 15-ти летним опытом
3️⃣ Общение с единомышленниками и заряд мотивации

➡️ А еще, забирай в закрепе БЕСПЛАТНЫЙ вводный курс по Python

Короче, всё для прокачки! Залетай к нам — ссылка на чат (тык)

Senior Python Developer

09 Dec, 14:25


Наследование

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

В примере на картинке класс Ferrari является дочерним классом Car.

Senior Python Developer

08 Dec, 19:45


Узнаем размер файла с помощью Python

C помощью метода os.path модуля os мы можем получить размер любого нашего файла в байтах.

Senior Python Developer

07 Dec, 19:11


Проверяем отсутствие общих элементов множества и последовательности

Метод sets.isdisjoint() позволяет проверить множество sets на отсутствие общих элементов с последовательностью other. Метод возвращает True, если множество sets не имеет общих элементов с итерируемым объектом other, если имеются общие элементы то вернет False.

Синтаксис:
sets.isdisjoint(other)
Параметры:
other - объект поддерживающий итерацию (кортеж, символ или подстрока).
sets - множество frozenset или set.

Senior Python Developer

07 Dec, 14:06


📶 С 1 декабря для граждан РФ открыт доступ к платным материалам по программированию

Вот отсортированные базы с тонной материала(книги, курсы, ресурсы и гайды). Выбирай своё направление:

👩‍💻 Frontend 👩‍💻 PHP
⚙️ Backend 👩‍💻 Моб. Dev
📱 GitHub 👩‍💻 GameDev
🤓 Всё айти 👩‍💻 DevOps
👩‍💻 Python 🖥 Data Science
👩‍💻 Java 🐞 Тестирование
👩‍💻 C# 🤔 Хакинг & ИБ
👩‍💻 С/С++ 📱 Маркетинг
🖥 SQL 🖥 Дизайн
👩‍💻 Golang 👣 Rust

Скачивать ничего не нужно — все выложили в Telegram с доступом по ссылке

Senior Python Developer

07 Dec, 12:47


#вопросы_с_собеседований
Каким образом вы бы могли вывести на экран все функции в модуле?

Для перечисления функций в модуле используется метод dir(). На картинке представлено решение данного вопроса.

Senior Python Developer

06 Dec, 20:50


Генерирование случайных предложений с помощью Python

Вы можете использовать random.choiceв, а затем объединить выбранный список с помощью join.

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

Senior Python Developer

06 Dec, 14:26


Функция iter и два аргумента

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

Использование lambda в примере необходимо, поскольку переданную в iter функцию должно быть можно вызывать без аргументов. Сконструированный таким образом итератор для получения следующих элементов вызывает переданную функцию снова и снова до тех пор, пока функция не вернёт значение для остановки, при котором итератор генерирует исключение StopIteration, и итерация заканчивается.

Senior Python Developer

05 Dec, 19:17


Получаем геолокацию с помощью Python

В нашем примере мы получаем геолокацию Пизанской башни по координатам широты и долготы.

Подробнее про этот трюк можно почитать здесь.

Senior Python Developer

05 Dec, 15:03


Что такое абстракция и почему она важна в программировании?

Выбор правильных абстракций помогает для написания качественного кода.

Регистрируйтесь на открытый урок «Абстракция как математический объект» и вы узнаете как абстракции помогают упростить сложные системы и сделать код более понятным.

Урок посвящен курсу «Математика для программистов» от Otus — лучшие практики, после изучения которых вы сможете быстрее изучать новые языки программирования и фреймворки.

👉 Регистрация https://otus.pw/auvn/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Senior Python Developer

05 Dec, 14:09


Скачиваем вебсайты целиком

Максимально простой, но при этом мощный пакет pywebcopy поможет вам клонировать отдельные веб-страницы или даже целые сайты.

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

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

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

Senior Python Developer

04 Dec, 18:22


Как написать игру на Python: 5 игровых движков

Туториал для тех, кто хочет сделать игру на Python (и пока не изучать Unity или Unreal Engine). Напишем код простой игры со сбором монет и сравним на трех различных движках, а также сделаем пару игр в стилях Interactive Fiction и визуального романа.

Смотреть статью

Senior Python Developer

04 Dec, 14:57


Как связать микросервисы так, чтобы они работали идеально?

Синхронное взаимодействие или асинхронное? REST или Kafka? На открытом уроке разберём, какой подход нужен именно вашему проекту.

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

Спикер Евгений Непомнящий — опытный разработчик и преподаватель.

🔴 Записывайтесь на открытый вебинар 16 декабря в 20:00 мск и получите скидку на большое обучение «Microservice Architecture»: https://otus.pw/EFmk/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Senior Python Developer

04 Dec, 14:27


Узнаем информацию о номере телефона

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

Установка модуля - pip install phonenumbers.

В нашем примере мы узнаем что «+91987654З210» является Индийским номером телефона.

Больше информации вы можете найти здесь.

Senior Python Developer

04 Dec, 11:39


Внимание, Java- и Kotlin-разработчики Минска! Приглашаем вас на технический митап с барбекю. Будем слушать и обсуждать топовые доклады от команды МТС Web Services, а после — общаться в неформальной обстановке.

Когда: 6 декабря, 18:00

Где: площадка «Бетон», Кальварийская ул., 17, г. Минск

В программе:

— Расскажем, как строим новое облако с нуля в 2024-м
— Поговорим о разработке IAM в облаке
— Обсудим, как создать Development Platform
— Разберёмся, что такое реконсиляция и почему она важна для облачной инфраструктуры

После докладов вас ждёт: барбекю-пати и нетворкинг.

Регистрируйтесь по ссылке.

Senior Python Developer

03 Dec, 20:28


Разница между генераторными выражениями и генераторами коллекций

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

Распечатав переменные, можно заметить, что значением переменной a является список, а переменная x хранит в себе объект генератора. И здесь возникает вопрос: что же использовать?

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

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

Senior Python Developer

03 Dec, 13:29


💼 Декабрьский челлендж для алготрейдеров!

Используешь роботов в торговле на бирже? Тогда заходи в Терминал или приложение Т-Банка, нажимай на кнопку «Участвовать», подключай брокерский счет и готовься к конкурсу от Т-Инвестиций.

С 2 по 13 декабря твой робот должен совершить минимум 1000 сделок. По итогам конкурса выберем трейдеров с самой высокой доходностью в двух категориях: портфели до 1 млн руб. и от 1 млн руб.

Лидеры категорий разделят между собой призовой фонд в размере 550 000 рублей.

Узнать больше про конкурс можно тут.

P.S.📚 А если не торгуешь, но эта тема интересна - то изучи статью, как это делается, изучи Invest API для подключения торговых роботов, готовый sdk и примеры роботов других участников.

Сроки акции с 2.12.2024 по 13.12.2024. Подробнее об организаторе акции, порядке её проведения, призах, сроках, месте и порядке их получения на tbank.ru. АО «ТБанк». Реклама.

Senior Python Developer

03 Dec, 12:45


Размер в байтах

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

Senior Python Developer

03 Dec, 10:44


Тестовое собеседование на Middle Python-разработчика в четверг

5 декабря(в четверг) в 19:00 по мск
приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:
1. Карим, Team lead в Чойс, ex-Kaspersky будет задавать реальные вопросы и задачи разработчику-добровольцу
2. Карим будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
3. В конце можно будет задать любой вопрос Кариму

Что узнаешь на прямом эфире от ШОРТКАТ:
• Чего ждут от кандидатов на Middle позиции в Python-разработке
• Какие вопросы задают на интервью и зачем
• Как подготовиться к собесу, чтобы получить оффер

Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_python_bot

Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqucPo68

Senior Python Developer

03 Dec, 10:19


Метод dt.weekday()

Метод dt.weekday() возвращает день недели в виде целого числа, где понедельник = 0, а воскресенье = 6.

Senior Python Developer

02 Dec, 17:04


Перевод текста с помощью Python

Перевод текстов с одного языка на другой становится все более распространенным явлением для различных веб-сайтов, поскольку они ориентированы на международную аудиторию. Пакет python, который помогает нам сделать это, называется translate. В примере на картинке мы переводим английскую фразу на испанский язык.

Senior Python Developer

02 Dec, 13:59


Как менялась разработка на Python и что нас ждёт дальше

📆 19 декабря собираем предновогодний митап от Яндекса, чтобы подвести итоги 2024 года.

Вспомним об интересных новостях, связанных с языком:

🔸 Обсудим Python 3.12, о котором говорили в прошлом году, и подумаем, какие ожидания оправдались, а какие нет

🔸 Посмотрим на версию 3.13, Faster CPython, jit и nogil

А ещё поговорим о трендах в архитектуре и развитии бэкенд-разработчика на круглом столе с экспертами:

🔸 Николаем Хитровым, тимлидом в Точке

🔸 Евгением Афонасьевым, тимлидом из Авито

🔸 Никитой Соболевым, опенсорс-разработчиком

🔸 Сергеем Яхницким, техлидом в Техплатформе

🔸 Александром Букиным, основателем Pytup


⏭️ Регистрируйтесь на встречу в Москве или подключайтесь к трансляции, где бы вы ни были.

Senior Python Developer

02 Dec, 12:42


◀️Django с нуля. Часть 1: пишем многопользовательский блог для клуба любителей задач Python

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

Смотреть статью

Senior Python Developer

01 Dec, 20:01


Работа с регистрами

Форматирование текста — это боль каждого data scientist’а. Слова и предложения в разных форматах создают много проблем при очистке данных. Однако и для этих задач в Python есть нужные функции.

Senior Python Developer

30 Nov, 10:30


Визуализация 5 алгоритмов сортировки на Python

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

Смотреть статью

Senior Python Developer

28 Nov, 13:22


⬇️Как переименовать файл с помощью Python

С помощью метода rename модуля os мы можем с легкостью изменить имя файла.

Senior Python Developer

27 Nov, 20:26


#вопросы_с_собеседований
Как в классе сослаться на родительский класс?

Ответ на картинке (Функция super принимает класс и экземпляр).

Senior Python Developer

27 Nov, 14:56


Прожарка резюме для Python-разработчиков завтра

Ребята из менторской программы ШОРТКАТ разберут на эфире реальные резюме и подскажут, что улучшить, чтобы точно дойти до собеса.

Когда:
завтра, 28 ноября в 19:00 по мск

Ревьюит резюме рекрутер с опытом работы в Яндексе и Т-Банке.

☑️ Если хотите закинуть своё резюме, подпишитесь на бота @shortcut_python_bot — резюме будут собирать там 

☑️ Если закидывать нечего, но хочется посмотреть со стороны — тоже подписывайтесь на бота @shortcut_python_bot. Там будет ссылка на трансляцию и запись после

После эфира все получат памятку, как использовать ChatGPT для резюме. Ссылку пришлют, не поверите, тоже в боте @shortcut_python_bot

Короче, подпишитесь на бот, чтобы ничего не пропустить @shortcut_python_bot

Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqvN5ns9

Senior Python Developer

17 Nov, 19:35


Генерируем ip адреса

С помощью следующего фрагмента кода мы можем с легкостью сгенерировать ip адрес.

Senior Python Developer

16 Nov, 13:48


10 фишек Python, которые поднимут ваш скилл на новый уровень

Составили подборку из 10 фишек языка Python, которые упростят разработку, но о которых вы могли не слышать.

Смотреть статью

Senior Python Developer

16 Nov, 12:04


⚡️Всероссийский Хакатон ФИЦ 2024

🚀Попробуйте себя в одном из предложенных кейсов:
- Разработка алгоритма трекинга людей в видеопотоке с нескольких камер
- Цифровая карта подземных коммуникаций с использованием Cesium
- Симуляция записи в расписание
- Цифровой сервис для ведения реестра зеленых насаждений города Москвы
- Предсказание необходимого количества средств досмотра
- Система контроля и управления доступом
- Семантический делитель текстов
- Разработка сервиса печати этикеток для производителей одежды
И др. кейсы смотрите на сайте: https://фиц2024.рф/hackathon 

Хакатон пройдет в 2 этапа: Отборочный этап в Онлайн, Финал в Офлайн.

🏆Призовой фонд: 6 000 000 руб.
🔥Дедлайн регистрации: 26 ноября, 23:59
📅Даты отборочного этапа: 29 ноября - 2 декабря
🦾Даты финала: 3 - 4 декабря

Зарегистрируйтесь для участия в хакатоне: https://фиц2024.рф/hackathon

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

Senior Python Developer

16 Nov, 11:39


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

Установка модуля - pip install holidays

В нашем примере мы проверяем является ли 25 декабря 2021 в Великобритании праздником. Наша программа выдает нам, что в этот день отмечается Рождество.

Подробнее про данный модуль можно почитать здесь.

Senior Python Developer

15 Nov, 18:54


#вопросы_с_собеседований
Выведите список файлов в указанной директории

Ответ на картинке.

Senior Python Developer

15 Nov, 15:08


🎓 Приглашаем вас на вебинар "Обучение с учителем: разбираем задачу классификации", который состоится 18.11.2024 в 18:00! 🕕

Занятие посвящено задачам классификации, которые востребованы во всех областях Data Science. На занятии обсудим, что представляет из себя этот тип задач, какие есть подходы для её решения, а также изучим алгоритм kNN и применим его на практике.

👉 В результате урока вы:
- познакомитесь с таким классом задач, как классификация;
- изучите метрики для задачи классификации;
- узнаете, как устроен алгоритм kNN;
- научитесь применять алгоритм kNN на практике.

🔥 Не упустите возможность углубить свои знания в области классификации и машинного обучения! 📊🤖

👉 Присоединяйтесь к нам: https://otus.pw/eY41/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Senior Python Developer

15 Nov, 14:12


Достаем карты из колоды

В данном примере мы задействуем колоду из 52 карт.

С помощью данного кода мы достаем случайным образом 4 карты из нашей колоды.

Senior Python Developer

15 Nov, 11:30


Центральный университет начал набор на поток бакалавриата 2025 года.

Центральный университет запустил конкурс на получение грантов на обучение:
— конкурс проходит ежемесячно до августа 2025 года
— участвовать можно как онлайн, так и очно — в Москве
— участие могут принять ученики старших классов школ, студенты старших курсов колледжей

Центральный университет и компании-партнеры предоставляют гранты:

— гранты на обучение выделяются в размере 25%, 50%, 70% и 100% от стоимости
— студенты могут увеличить размер гранта, участвуя в специальных мероприятиях

Мероприятия в рамках конкурса:
— онлайн-контест: предполагает проверку базовых знаний математики, логики и аналитического мышления
— бизнес-игра: гибкие навыки абитуриентов: мотивация, лидерские качества и коммуникативность
— ИТ-буткемпы и хакатоны, на которых полученные знания можно применить на практике

➡️ Откликнуться: https://apply.centraluniversity.ru/

Senior Python Developer

15 Nov, 10:13


Как преобразовать цветное изображение в черно-белое

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

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

Подробнее ознакомиться можно здесь.

Senior Python Developer

14 Nov, 18:08


Метод update()

Метод словаря update() обновляет пары ключ-значение из словаря, переданного в качестве аргумента. Значения для имеющихся ключей обновляются, а для отсутствующих ключей вставляются key:value.

Senior Python Developer

13 Nov, 18:23


Делаем скриншот в две строки

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

Senior Python Developer

13 Nov, 12:00


🏁 Python разрабатывает API, как спорткар🏎 разгоняется до сотни — с FastAPI всё быстро, надёжно и элегантно 🏁

🛠 Если вам нужны инструменты для создания веб-приложений, которые не тормозят, не тратят лишних ресурсов и готовы к продакшену — ждём вас 26 ноября в 20:00 мск на бесплатном открытом уроке, где мы разберём, как FastAPI переворачивает мир разработки API. Узнаете всё: от маршрутизации до работы с базами данных и асинхронного программирования. А еще покажем, как создать простое API буквально за пару минут.

FastAPI — это не только скорость, но и простота в использовании. А для тех, кто хочет глубже нырнуть в разработку с Python, будет скидка на курс «Python Developer. Professional».

🔥Спикер Валентин Шилин — старший программист с опытом более 15 лет на С++, С#, JavaScript, Python, Scala, Java; аналитик данных; эксперт в обработке больших данных с помощью Scala/Spark и Hadoop Cloudera.

🔴 Зарегистрируйтесь прямо сейчас: https://otus.pw/sCZ5/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Senior Python Developer

13 Nov, 04:50


benedict

Если вы столкнулись с трудностями при работе со словарями в Python, то benedict может стать тем решением, которое вы искали.

benedict наследуется от встроенного типа dict, что означает, что он полностью совместим с существующими словарями и может быть использован в качестве замены в большинстве случаев.

Одной из ключевых особенностей benedict является поддержка keylists и keypaths. Это упрощает доступ к значениям в сложных словарях и работу с ними без необходимости вручную копаться во вложенных уровнях.

Senior Python Developer

12 Nov, 19:04


⚙️ itertools.combinations()

В Python функция itertools.combinations() генерирует все возможные комбинации элементов заданной длины из итерируемого объекта. Это полезно для задач, связанных с перебором подмножеств.

Senior Python Developer

12 Nov, 16:20


Тестовое собеседование на Middle Python-разработчика в четверг

14 ноября(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:
1. Савва Демиденко, ex. TechLead в Яндексе, Авито и другом русском бигтехе будет задавать реальные вопросы и задачи разработчику-добровольцу
2. Савва будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
3. В конце можно будет задать любой вопрос Савве

Что узнаешь на прямом эфире от ШОРТКАТ:
• Чего ждут от кандидатов на Middle позиции в Python-разработке
• Какие вопросы задают на интервью и зачем
• Как подготовиться к собесу, чтобы получить оффер

Это бесплатно? Бесплатно

Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_python_bot

Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqxNaGSZ

Senior Python Developer

11 Nov, 17:43


⚙️ itertools.product()

В Python функция itertools.product() генерирует декартово произведение нескольких итерируемых объектов, что удобно для перебора всех комбинаций элементов.

Senior Python Developer

11 Nov, 15:20


🤖 Data Analyst в Х5 Tech

В команде Х5 вас ждет:
— конкурентная зарплата, удаленка или гибридный формат;
— амбициозные проекты вроде собственной платформы по работе с нейросетями и автоматического ценообразования;
— прокачка навыков в корпоративном университете, митапы, конференции и общение с топами.

Развивайте один из продуктов:
— автоматизированное ценообразование;
— оптимизацию работы приложения;
— минимизацию затрат на транспорт.

Ожидаем, что вы:
— работаете в сфере Data Science или Data Analysis от трех лет;
— знаете Python;
— умеете проводить А/В-тестирования.

➡️ Откликнуться: @oooozhegovaaaa

Senior Python Developer

11 Nov, 15:09


Циклический сдвиг списка на N элементов вправо

Выше приведено решение с помощью слайсов.

Senior Python Developer

11 Nov, 13:08


⁉️ Столкнулись с тормозящим кодом?

Асинхронность и потоки в Python — это два инструмента, которые могут сделать ваши программы быстрее, но где же разница? Если вам важно оптимизировать выполнение запросов и IO-операций, не пропустите бесплатный открытый урок 12 ноября в 20:00 мск!

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

👨‍💻🛠👨🏻‍💻 Урок для Python-разработчиков, Data Scientists и ML-инженеров, которые работают с базами данных, API и многозадачностью.

🔴 Запишитесь на урок и получите скидку на курс «Python для аналитики»: https://otus.pw/GdtE/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Senior Python Developer

11 Nov, 10:55


Что будет выведено при выполнении кода?

Пояснение
⬇️
Функция make_multiplier возвращает лямбду, которая замыкает n. doubler умножает на 2, а tripler — на 3, поэтому результат 10 и 15.

Senior Python Developer

09 Nov, 19:37


⚙️ filter()

В Python функция filter() используется для отбора элементов, соответствующих условию. Она возвращает итератор, что делает её удобной и эффективной для обработки больших данных.

Senior Python Developer

08 Nov, 20:55


➡️ LiteLLM — использование любого LLM с использованием OpenAI и многое другое

LiteLLM – инструмент для гибкого и лёгкого управления LLM в Python. С ним можно быстро переключаться между моделями, контролировать затраты, интегрировать API без изменений кода и оптимизировать производительность через балансировку нагрузки.

Поддержка единого формата для всех LLM, что упрощает интеграцию.
Возможность управления расходами и ограничения скорости запросов для предотвращения перегрузок.

🔗 Ссылочка на доку

Senior Python Developer

08 Nov, 15:00


🎉 Приглашаем вас на бесплатный практический урок "Временные ряды - Фурье и вейвлет анализ", который состоится 11.11.2024 в 20:00 (мск)! 🕗

Хотите стать крутым аналитиком данных или обучать машины в 2024?

На вебинаре мы узнаем:
- Насколько нормален временной ряд? Преобразование Бокса-Кокса и зачем оно нужно;
- Компоненты временного ряда: фурье-анализ и прогнозирование значений повторяющихся процессов;
- Нестационарные процессы: как вейвлет-анализ позволяет проводить классификацию сложных событий во временных рядах.

В результате вебинара вы узнаете:
- Как нормализировать временной ряд с помощью преобразования Бокса-Кокса;
- Как разложить ряд на компоненты и с их помощью прогнозировать будущие значения;
- Как анализировать нестационарные процессы с помощью вейвлет-анализа.

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

Не упустите возможность углубить свои знания в области временных рядов!
👉 Присоединяйтесь к нам
: https://otus.pw/Yuht/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Senior Python Developer

08 Nov, 14:18


⚙️ all()

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

Senior Python Developer

07 Nov, 12:43


Что будет выведено при выполнении кода?

Пояснение
⬇️
Без передачи b функция использует b = a + 1, поэтому x = 3 * 4 = 12. С b=5 функция увеличивает b на 2, давая y = 3 * 7 = 21.

Senior Python Developer

05 Nov, 18:13


Что такое линейная сложность сортировки?

Линейная сложность сортировки обозначает алгоритм сортировки, который имеет временную сложность, пропорциональную количеству элементов в сортируемом массиве (или коллекции). В математической нотации линейная сложность обозначается как O(n), где "n" - количество элементов.

Примером линейной сортировки может быть алгоритм «сортировка подсчётом» (counting sort). В этом алгоритме создается дополнительный массив для подсчета количества вхождений каждого элемента. Затем на основе этой информации о количестве вхождений каждого элемента строится отсортированный массив.

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

Senior Python Developer

05 Nov, 15:20


IT-meetup для Python-разработчиков от команды «Группы Астра» и разработчиков RuPost

Разгоним осеннюю хандру! Говорят, что лучше всего в этом помогает непринужденная атмосфера среди единомышленников и кружка хорошего пшеничного смузи. 😎

План такой (надежный как швейцарские часы):
1) Проблемы GIL в Production и их возможные решения

Только реальные кейсы, только хард-рок! Расскажем про проблемы, с которыми столкнулись и как их решали.
Обсудим нововведения в Python 3.13, связанные с GIL.

2) Наш опыт использования JSON-RPC API
Почему именно JSON RPC? Сравним подходы и узнаем, где же REST, а также коснёмся документации.

3) Джедайские техники написания кода
Каков он путь джедая: от Юнлинга до Магистра. Испытания и приключения на всех уровнях. Главное, друг мой, не сходить с пути истинного — поделимся кодексом джедая.

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

Записываем: 15 ноября в 19:00 | Лофт «Событие», Москва, Николоямская улица дом 28

Регистрация доступна по ссылке.

Senior Python Developer

05 Nov, 12:11


Что такое MRO?

MRO (Method Resolution Order) — это механизм, используемый для определения порядка разрешения методов при наследовании классов и множественном наследовании. MRO определяет, какие методы будут вызываться в случае, когда у наследующего класса есть методы с одинаковыми именами, унаследованными от разных базовых классов.

MRO в Python определяется с помощью алгоритма C3 Linearization (C3 линеаризации). Этот алгоритм гарантирует, что порядок разрешения методов будет согласован и предсказуем вне зависимости от порядка наследования. Он предотвращает проблемы, связанные с амбигуитетами и неоднозначностями в множественном наследовании.

#для_продвинутых

Senior Python Developer

04 Nov, 19:23


Глубокое копирование (deep copy)

Глубокое копирование нужно для создания полной копии объекта, включая все вложенные объекты. Это важно для изменяемых объектов, таких как списки, чтобы изменения в копии не затрагивали оригинал.

Когда мы вызываем глубокое копирование, происходит следующее:
- Создается новый контейнерный объект (список, словарь и т. д.);
- Для каждого элемента исходного объекта рекурсивно вызывается глубокое копирование:
- Если элемент является изменяемым объектом (списком, словарем), то создается его копия с рекурсивным копированием вложенных элементов;
- Если элемент неизменяемый (число, строка) - он просто копируется как есть;
- Копии вложенных объектов вставляются в копию исходного объекта.

#это_база

Senior Python Developer

03 Nov, 17:50


Функция id()

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

Обратите внимание, что идентификатор объекта может измениться во время выполнения программы, если объект перемещается в памяти. Поэтому id() полезно для определения, указывают ли две переменные на один и тот же объект, но не следует полагаться на него для других целей, таких как сравнение объектов на идентичность.

#для_продвинутых

Senior Python Developer

03 Nov, 15:49


Бесплатное IT-образование в 2024

Отобрали для вас полезные телеграм-каналы, которые помогут освоить программирование и другие IT-направления

Выбирайте нужное и подписывайтесь:

👩‍💻 Python: @PythonPortal
🖥 Базы Данных & SQL: @SQL
👩‍💻 Java: @Java_Iibrary
👩‍💻 С/С++: @Cpportal
📱 GitHub: @git_developer
🤓 Книги айти: @portalToIT
👩‍💻 Frontend: @FrontendPortal
⚙️ Backend: @BackendPortal
👩‍💻 C#: @KodBlog
👩‍💻 Golang: @juniorGolang
👩‍💻 PHP: @PHPortal
👩‍💻 Моб. разработка: @MobDev
👩‍💻 Разработка игр: @GameDevgx
👩‍💻 DevOps: @loose_code
🖥 Data Science: @DataSciencegx
🤔 Хакинг & ИБ: @cybersecinform
🐞 Тестирование: @QAPortal
📱 Маркетинг: @MarketingPortal
🖥 Дизайн: @PortalToDesign

➡️ Сохраняйте себе, чтобы не потерять

Senior Python Developer

02 Nov, 11:00


classmethod

classmethod — это декоратор в Python, который используется для определения методов класса, которые не принимают экземпляр класса (self) в качестве первого аргумента, а вместо этого принимают класс (cls) в качестве первого аргумента. Эти методы могут использоваться для операций, которые связаны с самим классом, а не с его экземплярами.

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

Senior Python Developer

01 Nov, 12:17


Обезьяний патч

Обезьяний патч (Monkey patch) в Python — это техника, которая позволяет изменять или расширять функциональность существующих классов, модулей или объектов во время выполнения программы. Этот термин образовался из-за аналогии с идеей того, что вы «насаживаете» (patch) код поверх существующего, подобно обучению обезьяны выполнять новые трюки.

#для_продвинутых

Senior Python Developer

31 Oct, 16:54


Срезы

Срезы (slices) в Python — это способ получения подстроки (подсписка) из последовательности, такой как строка (str), список (list) или кортеж (tuple).

Senior Python Developer

31 Oct, 14:51


Яндекс Foodtech Tour теперь в Казани!

Эксперты Еком-сервисов Яндекс продолжают тур по городам с митапами для бэкенд-разработчиков. Ближайший пройдет в Казани уже 14 ноября. В программе три доклада: 
👉 Никита Сидоров, руководитель службы инфраструктуры пользовательской скорости в Яндекс маркете, расскажет про подходы к работе над перформансом приложения
👉 Гадель Закиров и Назар Старанцов, руководители групп в Яндекс Еде, объяснят, как можно ускорять старт приложения и загрузку главной страницы 
👉 Гоша Пономарев и Костя Захматов, разработчики в Яндекс Лавке, поделятся историей ускорения работы в дарксторах 

После докладов гостей ждет открытый микрофон со спикерами и афтепати. Зовите друзей и регистрируйтесь! 

Обратите внимание, количество мест ограничено. После регистрации обязательно дождитесь подтверждения заявки.

Senior Python Developer

29 Oct, 19:05


⚙️ any()

В Python функция any() проверяет, есть ли хотя бы один истинный элемент в итерируемом объекте. Она отлично подходит для быстрых проверок наличия условий, например, поиска элементов в списке.

Senior Python Developer

29 Oct, 15:05


Тестовое собеседование на Middle Python-разработчика в четверг

31 октября(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:

1. Савва Демиденко, ex. TechLead в Яндексе, Авито и другом русском бигтехе будет задавать реальные вопросы и задачи разработчику-добровольцу
2. Савва будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
3. В конце можно будет задать любой вопрос Савве

Что узнаешь на прямом эфире от ШОРТКАТ:

— Чего ждут от кандидатов на Middle позиции в Python-разработке
— Какие вопросы задают на интервью и зачем
— Как подготовиться к собесу, чтобы получить оффер

Это бесплатно? Бесплатно
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_python_bot

Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqwcirGU

Senior Python Developer

29 Oct, 14:26


➡️ Использование библиотеки Arrow для работы с датами и временем в Python

Arrow — это библиотека для более удобной работы с датами и временем в Python. Она предоставляет простой API для создания, преобразования и форматирования объектов datetime, упрощая работу с временными зонами и временем выполнения задач.

Arrow поддерживает естественные синтаксические конструкции и форматирование дат, а также имеет встроенные функции для манипуляции временем.

🔗 Ссылочка на доку

Senior Python Developer

27 Oct, 18:39


➡️ Разница между list.sort() и sorted() в Python

list.sort() сортирует список на месте, изменяя его, и возвращает None, тогда как sorted() создает новый отсортированный список, оставляя оригинал неизменным.

✔️ Оба метода имеют параметры key и reverse, позволяя кастомизировать сортировку.

list.sort() используется для изменения оригинального списка. • sorted() возвращает новый отсортированный список из любого итерируемого объекта.

🔗 Почитать подробнее

Senior Python Developer

26 Oct, 11:28


⚙️ XlsxWriter для записи файлов в формате Excel

ℹ️ XlsxWriter — это очень мощный модуль Python для записи файлов в формате Excel. Он поддерживает добавление текста, чисел, формул, изображений и макросов Excel — среди прочих функциональных возможностей.

✔️ XlsxWriter даже интегрируется с pandas, известным пакетом Python для работы с данными.

🔗 Ссылочка на доку

Senior Python Developer

26 Oct, 09:25


⚡️Выйти на стабильный доход в 150+ тысяч рублей можно всего за 3 месяца обучения в IT.

Сегодня переход в сферу IT — это не просто модный тренд, а реальная возможность изменить свою жизнь.

Ребята из онлайн-академии StepByStep в своем канале проводят бесплатный интенсив, благодаря которому можно погрузиться в мир IT и освоить самую востребованную профессию 2025 года – системный аналитик.

Гарантия трудоустройства после обучения.

Переходи и бесплатно изучай для себя новое прибыльное направление: https://t.me/+A1rEg2B5u_dlOTMy

Senior Python Developer

26 Oct, 05:27


➡️ Использование библиотеки Pyee для создания и управления событиями в Python

Pyee — это небольшая, но мощная библиотека, предоставляющая событийно-ориентированный подход в стиле Node.js для Python. Она позволяет легко создавать и управлять событиями в ваших приложениях, улучшая структуру кода и обеспечивая более гибкую обработку асинхронных операций.

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

🔗 Ссылочка на доку

Senior Python Developer

25 Oct, 17:02


➡️ Использование Pint для работы с единицами измерения и конвертаций

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

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

🔗 Ссылочка на доку

Senior Python Developer

25 Oct, 15:01


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

Ближайшее мероприятие:

• 9-11 ноября — для продуктовых и аналитиков данных, офер за 3 дня в команды Финтеха и Яндекс Практикума.

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

Senior Python Developer

25 Oct, 11:51


➡️ Использование cachetools для кэширования в Python

cachetools — это небольшая, но мощная библиотека для кэширования, которая предоставляет различные стратегии кэширования, такие как LRU (Least Recently Used), LFU (Least Frequently Used) и другие. Она позволяет оптимизировать производительность, избегая повторных вычислений или запросов.

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

🔗 Ссылочка на доку

Senior Python Developer

21 Oct, 17:08


➡️ Использование библиотеки Pypika для динамического построения SQL-запросов

Pypika позволяет создавать сложные запросы программным способом, избегая ошибок ручного написания SQL-кода и защищая от SQL-инъекций. Это особенно полезно при построении динамических и параметризованных запросов в приложениях.

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

🔗 Ссылочка на доку

Senior Python Developer

21 Oct, 15:01


Yandex Cloud запустил сервис для ускорения разработки продуктов в облаке Yandex Serverless Integrations

Теперь разработчики смогут при минимальном написании кода автоматизировать различные процессы, например обработку онлайн-заказов и мониторинг систем безопасности.

Сделать это можно благодаря инструменту Yandex Workflows — он позволяет описать последовательность операций с помощью декларативного языка YAML. Сервис автоматически запустит эти процессы и проконтролирует их выполнение.

Помимо этого, Yandex Serverless Integrations включает в себя инструменты EventRouter для передачи событий между сервисами и API Gateway для создания шлюзов между внешними и облачными сервисами по спецификации OpenAPI 3.0.

Читайте подробнее в статье

Senior Python Developer

19 Oct, 15:51


➡️ Использование библиотеки aiometer для конкурентного выполнения асинхронных задач

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

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

🔗 Ссылочка на доку

Senior Python Developer

18 Oct, 11:42


#вопросы_с_собеседований
Как работает метод __new__() в Python?

Ответ ⬇️
Метод __new__() создает новый экземпляр класса, выделяя память для объекта. Он вызывается до метода __init__(), который уже занимается инициализацией созданного экземпляра. Это важно для работы с неизменяемыми типами, такими как str или int, а также в случаях, когда нужно контролировать процесс создания объекта, например, в паттерне Singleton.

Senior Python Developer

17 Oct, 20:16


Деструкторы

В дополнение к конструкторам в Python также существуют и деструкторы. В каждом конкретном классе деструктор можно переопределить с помощью метода __del__, который вызывается автоматически при удалении объекта.

Переопределение деструкторов на практике встречается редко, но на случай каверзных вопросов на собеседованиях стоит знать об этой особенности.

Senior Python Developer

17 Oct, 15:11


Вебинар: «Как построить pipeline предобработки данных для машинного обучения»

📅 Дата: 21 октября 2024, 18:00 (МСК)
👩‍💻 Спикер: Мария Тихонова

🚀 О чем поговорим:
На вебинаре вы научитесь строить полноценный pipeline для подготовки данных под задачи машинного обучения. Мы обсудим ключевые шаги, такие как Exploratory Data Analysis (EDA) и предобработка данных, на конкретных примерах.

💼 Что вы получите:
- Разберетесь, как проводить разведочный анализ данных (EDA).
- Изучите лучшие практики по очистке, трансформации и подготовке данных для ML-моделей.
- Поймете, как избежать типичных ошибок при работе с данными.

📌 Встречаемся в преддверии старта курса «Machine Learning. Basic». Все участники вебинара получат специальную цену на обучение!

👉 Для участия зарегистрируйтесь на сайте: https://otus.pw/vexW/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Senior Python Developer

17 Oct, 10:35


Создание капчи

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

В Python капчу реализовать можно довольно просто — с использованием пары модулей сначала создаётся картинка, затем сохраняется в определённый файл. Результат выполнения программы вы можете увидеть на картинке снизу.

Senior Python Developer

16 Oct, 18:26


Метод file.writelines()

Метод файла file.writelines() записывает последовательность (список) строк в файл file.

Последовательностью может быть любой итерируемый объект, содержащий в качестве элементов строки. Обычно это список строк.

Обратите внимание, что метод file.writelines() не добавляет разделители строк автоматически. Если они требуются, то добавляйте их вручную.

Senior Python Developer

16 Oct, 12:02


Всего лишь 5% разработчиков получают зп 400к+ в РФ.

Причин очень много, но одна из главных — высокие доходы в АйТи не совместимы с отдыхом…

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

Но есть ли другой путь?

Канал ML-инженера Олега Андриянова о том, как быстро расти в зарплате благодаря софт скиллам.

За 4 года в ИИ-разработке Олег вырос в доходах в 12.5 раз.

При этом продолжает качать и хард скилы, но не тратит на них всё свободное время.

Посты, которые будут вам полезны:
— какие 2 софт скилла помогают зарабатывать больше?
— как справляться со стрессом на работе, чтобы быть продуктивным?
— как гарантировано повысить себе зарплату?
— какой есть грязный трюк для повышения доходов?

Так что если вы хотите получать больше, подписывайтесь на канал Олега. И войдите в 5% золотых айтишников.

Senior Python Developer

16 Oct, 11:23


Извлекаем домен из URL-адреса с помощью Python

Для анализа домена URL-адреса в Python 3 вы можете использовать следующую конструкцию.

Однако для надежного парсинга домена верхнего уровня (example.testв данном примере) необходимо установить специализированную библиотеку (например, tldextract).

Senior Python Developer

15 Oct, 13:31


Метод compress()

Метод compress() модуля itertools создает итератор, который фильтрует элементы из данных s, возвращая только те, которые имеют соответствующий элемент, равный True или 1 в последовательности lst.

Senior Python Developer

15 Oct, 11:31


Получаете зарплату в криптовалюте? 💸

IT-специалисты, это для вас!

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

С помощью Exnode вы можете обменять криптовалюту на наличные быстро и надежно!

1. Перейдите на Exnode
2. Выберите ваш город
3. Выберите обменник с выгодным курсом.
4. Оставьте заявку.
5. Получите наличные в офисе в вашем городе.

Преимущества:

Анонимные сделки: Совершайте обмен криптовалюты, не раскрывая личные данные.
Проверенные обменники: Exnode сотрудничает только с надежными и проверенными сервисами.
Безопасность и конфиденциальность: Ваша информация и сделки защищены.

Подписывайтесь на телеграм-канал Exnode, чтобы быть в курсе всех новостей мира криптовалют!

Senior Python Developer

14 Oct, 23:56


docstring

docstring — это строковый литерал, который по PEP должен быть сразу после определения названия для модуля, функции, класса или метода. Создаётся с помощью трех двойных кавычек.

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

Senior Python Developer

14 Oct, 17:39


Преобразование списка в словарь без zip

В этом примере мы преобразуем список формата [key_1, value_1, key_2, value_2] в словарь {key_1: value_1, key_2: value_2}.

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

Senior Python Developer

14 Oct, 13:00


Присоединяйтесь к бесплатному мини-курсу «Симулятор профессии дата-сайентист»

За 3 дня с нуля создадите виртуального робота-помощника (как Siri, Олег или Маруся) и решите несколько типичных задач дата-сайентиста, чтобы понять, подходит ли вам это направление

А еще:

- поймете, какие навыки нужны для работы в Data Science
- познакомитесь с языком Python
- узнаете о библиотеках Pandas, Plotly, Numpy
- освоите основы машинного обучения
- поработаете с Google Colab
- напишете AI-driven прототип

Все участники получат подарки: чек-листы и гайды, и чтобы больше узнать о профессии, бессрочный доступ к курсу «Основы Python: пишем чат-бота»

Записаться на мини-курс и забрать подарки

Senior Python Developer

14 Oct, 09:14


Функции, поддерживающие только именованные аргументы (kwargs)

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

Это может быть полезно для того, чтобы улучшить понятность кода. Как видите, наша задача легко решается при помощи использования аргумента * перед списком именованных аргументов. Здесь, что вполне очевидно, можно использовать и позиционные аргументы — в том случае, если поместить их до аргумента *.

Senior Python Developer

14 Oct, 07:14


В России можно посещать IT-мероприятия хоть каждый день: как оффлайн, так и онлайн

Но где найти единую "базу" ивентов?
Чтобы "заглянул -> увидел все что есть -> выбрал -> пошел"?

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

👍 Очень крутая вещь, где вы точно не пропустите ничего важного и интересного.

🗂 IT-мероприятия России / ITMeeting / IT events - подпишитесь, чтобы не пропустить свой ивент!

Senior Python Developer

14 Oct, 05:03


Экономия памяти с помощью __slots__

Если вы когда-нибудь писали программы, которые создают по-настоящему большие количества экземпляров некоего класса, то вы могли заметить, что таким программам неожиданно может понадобиться очень много памяти. Происходит это из-за того, что Python использует словари для представления атрибутов экземпляров классов. Это хорошо сказывается на производительности, но, с точки зрения потребления памяти, это неэффективно. Обычно, правда, проблем эта особенность не вызывает. Однако если вы столкнулись в подобной ситуации с нехваткой памяти — можете попробовать воспользоваться атрибутом slots.

Здесь, когда мы объявляем атрибут slots, Python использует для хранения атрибутов не словарь, а маленький массив фиксированного размера. Это серьёзно сокращает объём памяти, необходимый для каждого из экземпляров класса. У применения атрибута slots есть и некоторые недостатки. Так, пользуясь им, мы не можем объявлять новые атрибуты, мы ограничены только теми, которые имеются в slots. Кроме того, классы c атрибутом slots не могут использовать множественное наследование.

Senior Python Developer

13 Oct, 16:45


Как удалить пробелы из начала строки (из её левой части), из её конца (из правой части), или с обеих сторон строки?

Здесь нам пригодятся, соответственно, методы lstrip(), rstrip() и strip().

Senior Python Developer

12 Oct, 17:01


Получаем ежедневные новости с помощью Python

Для реализации нам нужно установить библиотеки requests и BeautifulSoup.
pip install bs4
pip install requests

Подробный разбор и описание кода можно найти здесь.

Senior Python Developer

12 Oct, 15:00


Главная конференция по бизнесу в Telegram

31 октября в Москве пройдёт первая конференция по Telegram от крупнейшего сервиса аналитики Telemetr. Топы Телеграм-рынка, маркетологи и представители бизнеса обсудят самые актуальные тенденции и перспективы развития платформы Telegram.

Присоединиться к мероприятию можно будет и онлайн. Тут найдёте всю информацию - https://telemetr.pro.

На конференции вас ждут:
- 20+ опытных спикеров
- 1000+ онлайн и офлайн участников
- две сцены
- нетворкинг активности
- лаунж зона
- вкусный фуршет
- яркое afterparty в PAPA Moscow

Спикерами главной сцены будут: Артемий Лебедев, руководитель Telemetr - Денис Ларионов, основатель агентства GoDigital - Сурен Альбертян, основатель Сидорин ЛАБ - Дмитрий Сидорин и многие другие!

За подробностями сюда - https://telemetr.pro

А купить билет со скидкой в 10% можно, использовав наш промокод - TMConf10

Купить билет - https://telemetr.pro

Senior Python Developer

12 Oct, 14:35


Узнаём курс доллара при помощи Python в 2 строчки

Пакет forex-python позволяет получать данные о курсе валют и конвертировать одну валюту в другую. Программа на картинке позволяет нам узнать курс доллара относительно многих других валют мира. Вместо "USD" можно вставить любую другую валюту и получить актуальное соотношение.