seniorpy | Unsorted

Telegram-канал seniorpy - Senior Python Developer

54326

№ 4931117861 Публикуем интересные/полезные фичи/библиотеки языка. По вопросам сотрудничества: @adv_and_pr Канал на бирже: https://telega.in/c/seniorpy

Subscribe to a channel

Senior Python Developer

Вычисление выражений Python

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

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

Senior Python Developer

Функция random.choices()

Функция возвращает список элементов длины k, выбранных из последовательности lst с перестановкой элементов. Другими словами, функция используется, когда требуется выбрать несколько k случайных элементов из заданной последовательности, элементы не сохраняют первоначальный порядок.

Если k > len(lst), то элементы lst могут повторятся несколько раз.

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

Senior Python Developer

Функция dropwhile()

Функция dropwhile() модуля itertools создает итератор, который удаляет элементы из последовательности iterable до тех пор, пока функция predicate равна True или 1. Возвращается итератор с отобранными элементами.

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

Senior Python Developer

Гуглим с помощью Python

Установка необходимых пакетов — pip install beautifulsoup4 и pip install google

В нашем примере мы задаем в поиске слово "Python" и получаем ссылки на 3 самых популярных по мнению Google сайтов о Python.

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

Senior Python Developer

☕️ Самые интересные доклады с YaTalks — уже на Яндекс Музыке!

Стартовал новый сезон YaTalks: ReRun — подкаст избранных докладов с самой большой технологической конференции Яндекса. Мы собрали их в Техномарафон — совместный спецпроект с командой Яндекс Музыки. Техномарафон будет идти 3 недели, а всего вас ждёт 28 выпусков.

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

🔴 Ускоритель в масштабе планеты: как инженеры управляют временем
🔴 Дебаты: AI недооценён или переоценён?
🔴 Человек и проект: как создаётся технологическое чудо
🔴 Свой среди чужих: как выжить в интернациональных командах?

Добавляйте Техномарафон в избранное на Яндекс Музыке — скоро выложим ещё много крутых выступлений!

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

Senior Python Developer

Уникальный сервер для любых задач в Амстердаме за 2$ в месяц

1 Gb RAM / 1 core CPU / 10 Gb NVMe - 2$ в месяц
https://www.vdsina.com/ru/pricing/standard

- Уникальная фиксированная цена в долларах США, которая не будет меняться
- Компания зарегистрирована в Дубае
- Оплата с рублёвой карты, криптой, иностранной картой через Stripe
- Готовые шаблоны с Outline, WireGuard, IPsec
- Подключение к сети интернет — 10 Гбит/сек
- Доступны все популярные сайты, включая ChatGPT, Netflix

Почему я должен верить компании? VDSina работает с 2014 года и сейчас обслуживает более 40 000 серверов. Сомневаетесь? Вот чат в телеграме — задавайте вопросы другим пользователям: /channel/vdsina

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

Senior Python Developer

Авито ищет аналитиков — получить оффер можно за одни выходные!

Вот, что ждет вас на позиции:
— зарплата от 200 до 480 тысяч рублей в зависимости от грейда;
— расширенный ДМС, компенсация питания и другие бонусы;
— формат работы на выбор: офис или удаленка;
— возможность поучаствовать в разработке новых продуктов — обучать модели, делать прогнозы, экспериментировать и автоматизировать.

Авито — это про карьерное развитие и комфортные условия. Регистрируйтесь на Weekend Offer до 4 апреля: https://u.to/A66AIA

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

Senior Python Developer

🦾 Изучите работу gRPC в Python и прокачайте скиллы в разработке

Приходите на бесплатный практический урок от OTUS, где вы вместе с опытным экспертом:

- поговорите о gRPC — протоколе на основе HTTP/2 и Google Protobuf;
- посмотрите на реализацию клиента и сервера;
- обсудите плюсы и минусы такой реализации.

📆 Занятие пройдёт 25 марта в 20:00 мск и будет приурочено к старту курса «Python Developer. Professional». Доступна рассрочка на обучение!

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

Пройти тест

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

Senior Python Developer

Модульное программирование

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

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

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

Senior Python Developer

Библиотека yt-dlp

Библиотека yt-dlp — это реализация YouTube-DL на языке Python. Она позволяет скачивать видео с YouTube и других видеохостингов, а также получать информацию о видео.

Чтобы установить библиотеку yt-dlp, выполните следующую команду в терминале:

pip install yt-dlp


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

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

Senior Python Developer

Xarray

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

Xarray похож на Pandas, но ориентирован не на табличные данные, а на N-мерные массивы данных

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

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

Senior Python Developer

PyGObject

PyGObject — это набор Python-привязок для библиотеки GObject, которая является основой для создания кроссплатформенных приложений на GTK+ для Windows, macOS и Linux.

PyGObject доступен в большинстве дистрибутивов Linux и macOS. В Windows его можно установить с помощью пакетного менеджера Chocolatey.

choco install pygobject


Код с картинки создаёт окно с заголовком «Привет, мир!» и выводит его на экран.

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

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

Senior Python Developer

Бесплатный курс по Backend-разработке от Газпромбанка 💻

Газпромбанк приглашает тебя в бесплатную академию GPB IT Factory с оффером для лучших студентов.

Программа GPB IT Factory составлена вице-президентами, IT-лидерами и директорами департаментов Газпромбанка, под руководством которых ты сможешь прокачать свои скиллы в backend-разработке, став уверенным junior-специалистом. Для роста на middle-позицию тебе нужен будет только опыт работы, который смогут получить лучшие студенты программы, присоединившись к команде Газпромбанка!

Мы ждем студентов 2 курса магистратуры или тех, кто уже завершил(-а) обучение в вузе и сможет посещать занятия в Москве. Для прохождения отбора достаточно обладать инженерным мышлением, владеть одним из языков программирования, а также знать основы SQL, Computer Science и Linux. 

📍Оставить заявку

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

Senior Python Developer

Узнаем сколько дней осталось до заданной даты с помощью Python

Вы можете изменить date_str на любую другую дату, а вывод будет показывать количество дней до этой даты.

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

Senior Python Developer

Mojo: Python-совместимый язык с производительностью Си — от Криса Лэттнера

2 мая 2023 года Modular (одна из компаний-лидеров в сфере AI-инфраструктуры) анонсировала язык программирования Mojo, обещающий полную совместимость с Python в сочетании со сверх-высокой производительностью.

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

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

Senior Python Developer

Функция reduce()

Функция reduce() модуля functools кумулятивно применяет функцию function к элементам итерируемой iterable последовательности, сводя её к единственному значению.

Параметры:
function - пользовательская функция, принимающая 2 аргумента,
iterable - итерируемая последовательность,
initializer - начальное значение.

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

Senior Python Developer

Друзья, если вам интересна карьера в IT, записывайтесь на курс «Основы программирования на Python» 

Старт: 1 апреля
Продолжительность: 2 месяца

Python считается самым легким языком для входа в профессию. Его используют 49,2% программистов мира по версии Statista.com (2023).

Курс охватывает все основные концепции Python, вы научитесь:

- Писать прикладные программы на Python
- Разрабатывать приложения для работы с файлами
- Работать с регулярными выражениями
- Создавать программы с использованием циклов и функций
- Работать с модулями и библиотеками
- Форматировать вывод данных
- Обрабатывать исключения

🏆 Выдаём сертификат Академии при успешной сдаче экзамена
🏆 Помогаем с трудоустройством нашим ученикам

Войди в IT — выбери лучшее для себя.

Академия Кодебай
образовательный центр по ИБ
для профессионалов
Пишите в тг @Codeby_Academy
Или звоните 84994441750

#python #IT #новый_старт

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

Senior Python Developer

Сортировка вставками (объяснение алгоритма)

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

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

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

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

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

Senior Python Developer

Pymorphy2

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

Для использования pymorphy2 в Python необходимо сначала установить библиотеку. Это можно сделать с помощью менеджера пакетов pip:

pip install pymorphy2


После установки библиотеки можно создать объект класса MorphAnalyzer:
from pymorphy2 import MorphAnalyzer

analyzer = MorphAnalyzer()


Объект класса MorphAnalyzer позволяет выполнять морфологический анализ слов. На примере из картинки вы можете узнать, какая часть речи слово «стол».

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

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

Senior Python Developer

DABL

DABL (Data Analytics in Business Language) — это библиотека Python, которая упрощает использование машинного обучения для анализа данных. Она предоставляет простой и понятный интерфейс для создания моделей машинного обучения, а также для их обучения и оценки.

Чтобы начать работу с DABL, необходимо установить библиотеку. Это можно сделать с помощью следующей команды:

pip install dabl


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

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

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

Senior Python Developer

Правильная работа с базой данных на Python

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

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

Senior Python Developer

Чем отличается __str__() от __repr__() в Python, и когда используется каждый из этих методов?

Метод __str__() используется для создания удобочитаемого представления объекта для конечного пользователя, тогда как __repr__() предназначен для создания официального строкового представления объекта, которое можно использовать для воссоздания того же объекта. __repr__() часто используется для отладки и разработки, так как он должен быть точным и однозначным. __str__(), с другой стороны, обычно используется для предоставления дружественного к пользователю представления объекта и может быть менее подробным или точным. Если __str__() не определен, Python будет использовать __repr__() в качестве запасного варианта.

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

Senior Python Developer

Как перезагрузить импортированный модуль?

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

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

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

Senior Python Developer

28 марта, 19:00
Selectel Python Meetup.

Ребята из @SelectelCareers проводят митап для Python-разработчиков — присоединяйтесь!

Темы докладов:

◽️ «Черная овечка на фоне FastAPI», Николай Хитров, Банк Точка

Разберем еще один быстрый веб-фреймворк в Python, о котором вы пока не слышали. Николай сравнит его с FastAPI, рассмотрит плюсы и минусы.

◽️ «Слоистая архитектура в Python-приложениях: гибкость кода vs оптимизация», Антон Титов, Selectel

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

◽️ «Перешел с Python на Go. Лучше стало», Андрей Шубин, Яндекс.Облако

Наверняка многих посещали мысли: «а давайте перепишем все с Python на Go»? Легко ли реализовать привычные нам приемы из Python в новом языке программирования и стоит ли? В докладе Андрей поделится своим опытом.

Подключайтесь онлайн или приходите в офис в Санкт-Петербурге: https://slc.tl/u4yka

Реклама ООО «Селектел» erid 2VtzqwE2tSQ

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

Senior Python Developer

Pyro4

Pyro4 — это библиотека Python для удаленного вызова процедур (RPC). Она позволяет создавать удаленные объекты, которые можно вызывать из других процессов или компьютеров.

Чтобы использовать Pyro4, необходимо сначала установить библиотеку. Это можно сделать с помощью менеджера пакетов pip:

pip install Pyro4


После установки библиотеки можно начать создавать удаленные объекты. Для этого необходимо создать класс, который будет представлять удаленный объект. Этот класс должен наследоваться от класса Pyro4.Proxy.

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

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

Senior Python Developer

PyQt6

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

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

pip install PyQt6

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

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

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

Senior Python Developer

Декоратор abstractmethod

abstractmethod — это декоратор из модуля abc, который используется для определения абстрактных методов в классах Python.

Что такое абстрактный метод?
Абстрактный метод — это метод, который объявляется в классе, но не имеет реализации. Он служит шаблоном для методов, которые должны быть реализованы в подклассах.

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

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

Senior Python Developer

Кэшированные атрибуты

Во встроенном пакете functools присутствует декоратор @cached_property, позволяющий кэшировать результат метода и загнать его в атрибут.

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

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

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

Senior Python Developer

Python-библиотека moexAlgo для упрощения работы с Алгопак API

Библиотека необходима для работы с демоверсией Алгопак — новым инструментом Московской биржи. Благодаря ему вы можете прокачать свои навыки работы через REST API и Python-клиент. Клиенты получают доступ к большому набору исторических и онлайн-данных по рынку акций MOEX и могут проводить backtest различных торговых стратегий, а также создавать и автоматизировать торговые алгоритмы. Демоверсия Алгопак доступна всем зарегистрированным пользователям сайта ПАО Московская Биржа — тестируйте на сайте.

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

Реклама. Рекламодатель ПАО Московская биржа. ОГРН (1027739387411)

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

Senior Python Developer

#вопросы_с_собеседований
Что выведет программа?

Ответ:
Кажется, ничего сложного. create_multipliers вернёт список из 5 функций (назовём их list_lamba_f). Каждая list_lamba_f будет умножать свой аргумент на свой индекс в результирующем массиве.

Получается, что на экране мы увидим:

0
2
4
6
8

Дальнейший разбор предполагает, что вам знакомо замыкание (closure) при использовании вложенных функций (nested functions).

Свои коррективы в наивное объяснение выше вносит позднее связывание. Согласно ему, значение переменной из замыкания (это переменная i) вычисляется в тот момент, когда вызывается внутренняя функция (наши list_lamba_f).

Получается, что значение i в list_lamba_f вычисляется в момент вызова multiplier(2) в пятой строчке. Но в этот момент create_multipliers уже отработала целиком. и значение i — это 4. То есть для всех list_lamba_f значение i равно 4.

Итак, ответ:

8
8
8
8
8.

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