Python академия
الذهاب إلى القناة على Telegram
Учи Python быстро и легко. Ежедневно публикуем практические задачи, разборы, готовые решения, объяснения логики, советы по алгоритмам. ✔ Подходит для прокачки навыков кодирования. По всем вопросам @evgenycarter
إظهار المزيد7 291
المشتركون
لا توجد بيانات24 ساعات
-17 أيام
-3930 أيام
أرشيف المشاركات
7 291
Имя функции не определено
В этом примере мы добавили лишнюю букву o при вызове функции — sayHelloo() вместо sayHello(). Это просто опечатка, однако она вызовет ошибку, потому что функции с таким именем не существует.
Итак, мы получили ошибку: NameError: name 'sayHelloo' is not defined. Подобные орфографические ошибки очень легко пропустить. Сообщение об ошибке обычно помогает исправить это.
Подписывайтесь на канал 👉@pythonofff
7 291
Обработка исключений
Исключения — это тип данных, который нужен для того, что бы сообщать нам об ошибках.
Существует базовое исключение BaseException от которого наследуются все остальные исключения.
В блоке try мы выполняем инструкцию, которая может породить исключение, а в блоке except мы ловим ошибки и делаем свои операции.
Стоит учесть, что мы можем делать бесконечное количество вложенных блоков.
Грамотным способом является вылавливать только те исключения, которые мы ожидаем.
Подписывайтесь на канал 👉@pythonofff
7 291
Генераторные выражения (generator expressions)
Попробуем использовать генераторные выражения (для получения среза будем использовать функцию islice из itertools, которая возвращает итератор по срезу)
Подписывайтесь на канал 👉@pythonofff
7 291
Управление версиями Python
Инструмент pyenv позволяет легко переключаться между несколькими версиями Python. Он прост в использовании и следует лучшим традициям UNIX, где каждая утилита хорошо выполняет одну свою задачу.
Вкратце, основной функционал pyenv выглядит так:
— Позволяет изменять глобальную версию Python для каждого пользователя;
— Обеспечивает поддержку версий Python для каждого проекта;
— Позволяет переопределить версию Python с помощью переменной окружения;
— Выполняет поиск команд из нескольких версий Python одновременно.
Подписывайтесь на канал 👉@pythonofff
7 291
Генераторные фунции (generator functions)
Если предикатов фильтрации или обработчиков элементов списка много, то удобнее использовать генераторы. Они могут не дать прироста скорости, но помогут сэкономить память.
Генераторной фунцией в python называется функция, которая ведет себя как итератор. Для определения генераторной функции нужно использовать ключевое слово yield
Подписывайтесь на канал 👉@pythonofff
7 291
Аннотации типов
Python имеет динамическую типизацию и позволяет нам оперировать переменными разных типов, и иногда у нас бывают ошибки, связанные с некорректной передачей данных неверного типа.
В современных версиях 3.6+ добавилась поддержка аннотации типов переменных, полей класса,аргументов и возвращаемых значений.
Подписывайтесь на канал 👉@pythonofff
7 291
Профилирование
Профилирование — это процесс, который помогает при работе с данными и их обработке. Пожалуй, одна из самых известных Python-библиотек для этого – Pandas. Данная библиотека является довольно понятной в использовании и благодаря ей можно быстро выполнять анализ данных. Кроме того, Pandas имеет встроенную функцию .plot() как часть класса DataFrame, что позволяет демонстрировать на графиках обрабатываемые данные.
Подписывайтесь на канал 👉@pythonofff
7 291
Рисуем графики
Графическая библиотека plotly позволяет создавать интерактивные качественные графики в Python.
В сегодняшнем примере применим эту библиотеку чтобы построить простой линейный график.
Сначала нам нужен список с данными, которые мы хотим изобразить на графике. Это может быть, например, список или numpy массив:
data = [1, 1.3, 2.1, 4, 3.5, 7]
Далее метод fig = px.line(y=data) принимает наши данные и строит график в виде точек с координатами из массива и обьединяет их линиями.
Метод fig.show() откроет графическое окно с изображенным графиком.
Кроме этого plotly позволяет строить такие графики как:
— Точечные графики;
— Круговые диаграммы;
— Гистограммы;
— Тепловые карты;
— Пузырьковые диаграммы;
— И многие другие.
Больше подробно об этой библиотеке и способы ее применения можно посмотреть тут.
Подписывайтесь на канал 👉@pythonofff
7 291
Удаление дублирующихся данных
Чтобы очистить данные, некоторые шаги нужно сделать обязательно. Один из таких шагов — удаление дубликатов. И тут не важно, идет речь о текстовых или числовых данных. Если у вас слишком много дубликатов, это увеличивает время обработки данных.
Подписывайтесь на канал 👉@pythonofff
7 291
Слабые ссылки
Weakref позволяет создавать слабые ссылки к объектам, но не поддерживают объект живым, если не осталось больше сильных ссылок.
Слабые ссылки нужны для организации кэшей и хеш-таблиц из тяжелых объектов, потому что в долгоживущих программах может закончится память из-за большого хранения в кэшах.
Подписывайтесь на канал 👉@pythonofff
7 291
#вакансия #удалённо #parttime #python #преподаватель
OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний. 6 лет мы учимся друг у друга, советуемся, помогаем, делимся опытом и обсуждаем новости как в преподавании, так и в IT.
Вакансия: преподаватель онлайн-курса на английском языке Python Backend Developer. Professional
Можно без опыта преподавания, мы поможем вам освоить best practices.
Локация: удаленно
Преподаватель раскрывает тему с помощью теории и примеров из практики. Занятия проходят в Zoom в вечернее время.
Условия: 100 евро за один вебинар (полтора часа), дополнительные активности, которые оплачиваются отдельно: перевод презентаций, проверка домашнего задания, проверка проекта и т.д.
С нами вы сможете ✅
- структурировать свой опыт и знания;
- прокачать софт-скиллы;
- прокачать свой английский
Бонусы 🎁
- наши курсы со скидкой/бесплатно;
- можно приглашать лучших выпускников к себе на работу;
- воркшопы и конференции для наших преподавателей.
Обсудить подробнее @anna_phoenix7
7 291
Удаление эмодзи
Зачастую нам не нужны эмодзи в текстовых наборах данных. Мы можем их удалить всего одной строчкой кода. Сниппет, приведенный ниже, будет удалять эмодзи из датафрейма pandas столбец за столбцом. Этот сниппет можно найти на Stackoverflow.
Подписывайтесь на канал 👉@pythonofff
7 291
Counter из collections
Counter — это подкласс словаря dict. Сама коллекция нужна для хранения элементов в виде словарных ключей, а их счетчики хранятся в виде значений словаря.
Для отсутствующих элементов вернется 0 вместо KeyError.
Немного о методах:
elements — возвращает итератор по элементам, каждый из которых повторяется столько раз, сколько его количество.
most_common — возвращает список из n наиболее распространенных элементов.
Подписывайтесь на канал 👉@pythonofff
7 291
Перевод данных в нижний регистр
Весьма вероятно, что вам придется изменить регистр данных. Здесь мы переводим их в нижний.
Первые две строки кода заменяют табы и символы перевода строки на пустые строки. Третья строка ищет два и более пробелов при помощи регулярного выражения, а затем заменяет их на один пробел. Наконец, последняя строка обрезает данные с обоих концов, удаляя пробелы.
Подписывайтесь на канал 👉@pythonofff
7 291
Работа с ChainMap из collections
СhainMap группирует несколько словарей или других сопоставлений вместе, чтобы создать единое представление.
Иногда нам нужно сгруппировать словари в один или же работать с множеством словарей как с одним, в этом случае вам поможет ChainMap.
Немного про особенности ChainMap:
— Представляет тот же интерфейс, что и словарь, но с дополнительными возможностями;
— Создает обновляемое представление;
— Видит внешние изменения во входных отображениях.
Подписывайтесь на канал 👉@pythonofff
7 291
Удаление URL-адресов
Для получения данных многие пользуются опросами. Но люди невнимательно заполняют поля, и порой в этих данных встречаются URL-адреса. Регулярное выражение, приведенное ниже, удаляет URL.
Вы можете использовать и любой другой regex-паттерн для поиска URL. Здесь найденные адреса заменяются пустой строкой.
Подписывайтесь на канал 👉@pythonofff
7 291
Работаем с котировками акций в Python
Библиотека yfinance предоставляет мощный и удобный инструмент для получения информации с ресурса Yahoo! finance в Python.
В сегодняшнем примере применим эту библиотеку чтобы узнать цену акций Майкрософт.
Тикер Макйрософт называется "MSFT", именно его необходимо вписать в методе поиска:
msft = yf.Ticker("MSFT")
Цена акции находится в поле ['regularMarketPrice']:
price = msft.info['regularMarketPrice']
Кроме этого yfinance предоставляет огромное количество такой информации о тикере как:
— Исторические данные рынка;
— Информация по дивидентам;
— Информация о фирме (адрес, количество работников, прибыль) и т. д.
Больше подробно об этой библиотеке можно посмотреть тут.
Подписывайтесь на канал 👉@pythonofff
7 291
❗️Как пройти техническое собеседование на ML-специалиста?
⚠️ Узнайте на примере mock-интервью с преподавателями курса «MLOps» в OTUS!
На открытом уроке вы сможете наблюдать один из этапов собеседования при найме ML-специалистов — ML System Design секцию.
👉 Для удачного прохождения этого этапа не достаточно только знания алгоритмов машинного обучения. Также проверяются навыки проектирования ML систем, которые могут успешно работать в промышленной среде.
Больше инструментов MLOps ждет вас на курсе. Обратите внимание: возможные способы оплаты обучения.
👉 Готовьте вопросы и записывайтесь на вебинар!
https://otus.pw/DTaM/
Нативная интеграция. Информация о продукте www.otus.ru7 291
Repost from Python академия
Missingno
Большие грязные наборы данных и часто отсутствующие значения в них — это одна из частых проблем при работы с датасетами, и это важно отлавливать такие моменты.
Для таких целей существует Missingo — библиотека, которая имеет в себе небольшой набор простых в использовании средств для визуализации отсутствующих данных и утилит, которые позволяют быстро получить сводку полноты или отсутствия вашего набора данных.
Подписывайтесь на канал 👉@pythonofff
7 291
Чтение файлов и запись в них
Чтобы выполнить любую из операций чтения и записи, нам нужно сделать три основных шага:
Открыть файл
Выполнить операцию
Закрыть файл
Мы можем проделывать эти шаги, используя два паттерна. Объяснить их на словах сложно, но мы сделаем это при помощи кода.
Подписывайтесь на канал 👉@pythonofff
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
