Python School
82.2K subscribers
2.41K photos
8 videos
575 links
Уроки по Python, которые упростят вам жизнь. Без идиотских туториалов.

Наши мемы для программистов: @conhum

Сотрудничество - @alivian

Канал сотрудничает с рекламным сервисом @Tgpodbor_official

РКН: clck.ru/3G6pBb
加入频道
Дальнейшая обработка данных

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

Здесь в третьей строке мы отбрасываем два столбца с именами Id и Name и возвращаем копию нового датафрейма.

Четвертая строка проверяет, содержит ли столбец Type строку frozen или green, затем возвращает True и сохраняет эту строку.
Чтение файлов и запись в них

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

Открыть файл
Выполнить операцию
Закрыть файл
Мы можем проделывать эти шаги, используя два паттерна. Объяснить их на словах сложно, но мы сделаем это при помощи кода.
Удаление URL-адресов

Для получения данных многие пользуются опросами. Но люди невнимательно заполняют поля, и порой в этих данных встречаются URL-адреса. Регулярное выражение, приведенное ниже, удаляет URL.

Вы можете использовать и любой другой regex-паттерн для поиска URL. Здесь найденные адреса заменяются пустой строкой.
Перевод данных в нижний регистр

Весьма вероятно, что вам придется изменить регистр данных. Здесь мы переводим их в нижний.

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

Зачастую нам не нужны эмодзи в текстовых наборах данных. Мы можем их удалить всего одной строчкой кода. Сниппет, приведенный ниже, будет удалять эмодзи из датафрейма pandas столбец за столбцом. Этот сниппет можно найти на Stackoverflow.
Удаление дублирующихся данных

Чтобы очистить данные, некоторые шаги нужно сделать обязательно. Один из таких шагов — удаление дубликатов. И тут не важно, идет речь о текстовых или числовых данных. Если у вас слишком много дубликатов, это увеличивает время обработки данных.
Профилирование

Профилирование — это процесс, который помогает при работе с данными и их обработке. Пожалуй, одна из самых известных Python-библиотек для этого – Pandas. Данная библиотека является довольно понятной в использовании и благодаря ей можно быстро выполнять анализ данных. Кроме того, Pandas имеет встроенную функцию .plot() как часть класса DataFrame, что позволяет демонстрировать на графиках обрабатываемые данные.
Хотите получить новый навык в стек или систематизировать существующие знания?

У Яндекс Практикума есть курсы по разработке для опытных программистов.
На них можно:
— освоить Go, C++ и React на продвинутом уровне;
— прокачаться от джуна до мидла во фронтенде и бэкенде;
— научиться тестировать веб-приложения на Python;
— освоить асинхронное программирование на Python;
— разобраться в алгоритмах и структурах данных для работы и собеседований;
— освоить DevOps для эксплуатации и разработки.

На курсах актуальная программа, которая основана на исследованиях рынка труда. А ещё — код-ревью и советы от опытных наставников.

Познакомьтесь с профессиями и протестируйте формат бесплатно. А если решите продолжать учиться — до 30 ноября действует скидка 20% от Яндекса к Чёрной пятнице. Скидка действует только при оплате помесячно или в кредит.

→ Приходите учиться, чтобы расти в карьере.
Генераторные фунции (generator functions)

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

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

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

В этом примере мы добавили лишнюю букву o при вызове функции — sayHelloo() вместо sayHello(). Это просто опечатка, однако она вызовет ошибку, потому что функции с таким именем не существует.

Итак, мы получили ошибку: NameError: name 'sayHelloo' is not defined. Подобные орфографические ошибки очень легко пропустить. Сообщение об ошибке обычно помогает исправить это.
Каждая функция должна выполнять какое-то одно действие и делать это хорошо

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

Сервис развития карьеры Эйч запустил площадку, где ведущие IT-компании рассказывают всё о своих технических, продуктовых и креативных командах.

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

С какими командами уже можно познакомиться?
— Альфа-Банк: команда разработки внутрибанковского ПО
— Росбанк: команда разработчиков мобильного приложения
— Билайн: команда инженеров данных
— X5 Tech: Команда управления продуктами «Подписка» и «X5 ID»
— Ozon: команда проекта «Большие сезоны»
— Самокат: команда редакции приложения

Кстати, на сайт прикрутили тест на совместимость — можно потыкать и узнать, в какой команде вам будет комфортно работать. 👉🏻 https://h.careers/teams
Перевод текста

Мы живем в многоязычном мире. А поскольку каждый человек может выучить не так уж много языков, то, чтобы понимать друг друга, нам нужны переводчики. Переводчиком может быть и программа. Для создания таких программ в Python есть специальная библиотека — Translator.
Обнаружение плагиата

Один из важнейших факторов работы с текстовым контентом — плагиат. Не всегда возможно проверить каждый файл вручную, особенно, если у вас целый пакет файлов. Тут пригодится инструмент для выявления плагиата. Мы можем создать собственный детектор при помощи библиотеки difflib. Ее можно использовать для поиска сходства между двумя или несколькими файлами на одном устройстве.
Как извлечь аудио из видеофайлов

Представим, что у нас есть mp4-файл, а нам нужна только звуковая дорожка. Это нужно, если мы хотим сделать другое видео с таким же звуковым сопровождением. Это решается установкой библиотеки moviepy.
Скачивание постов и изображений профиля из Instagram

Всем нам часто попадаются хорошие посты в Instagram, которые хотелось бы сохранить на своем устройстве, чтобы иметь офлайн-доступ. Это можно сделать при помощи библиотеки instaloader.
Распространенные команды pdb

Отладчик pdb — это интерактивная консольная утилита. Не познакомившись с его командами, вы не сможете использовать весь его потенциал.

Как и любой console log, pdb скажет вам, на какой строчке ваш код сломался.
Познакомьтесь с языком SQL, который используют программисты, аналитики, тестировщики, продакт-менеджеры и другие специалисты. Сделайте первый шаг в IT, даже если ещё не определились с направлением, на бесплатном онлайн-интенсиве Skillbox с 24 по 26 ноября в 19:00 по московскому времени. Попробуйте свои силы на практике!

Запись и подробная информация: 👉 https://clc.to/TESODg

Вы научитесь:

● составлять запросы к базам данных;
● использовать сложные конструкции SQL;
● пользоваться SQLiteStudio.

Спикером будет специалист по анализу данных, сертифицированный SQL-разработчик от Microsoft — Мкртич Пудеян.

📍 Вы сможете общаться с другими участниками и ведущим интенсива в закрытом чате в Telegram.

📍 3 дня вебинаров по 1,5 часа для полного погружения в тему — такого вы ещё не видели!

🎉 Все участники получат электронную книгу издательства МИФ «Человек + машина» Пола Доэрти и Джеймса Уилсона. Участвуйте, задавайте вопросы и получите сертификат на 10 000 рублей на любой курс Skillbox.

Присоединяйтесь!
Чтение файлов и запись в них

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

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

Чтобы
переименовать файлы, мы воспользуемся методом rename() и применим его к каждому файлу. Предположим, мы хотим добавить к файлам префиксы «Odd» (нечетный) и «Even» (четный), основываясь на индексах.