pythonofff | Unsorted

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

7384

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

Subscribe to a channel

Python академия

Удаление ключа из словаря при помощи ключевого слова del

Python также позволяет использовать ключевое слово del для удаления определенного ключа из словаря. Использование ключевого слова del является менее безопасным подходом, так как нет способа просто указать значение по умолчанию, как это можно сделать при использовании метода .pop().

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

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

Python академия

Как переименовать файлы в Python

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

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

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

Python академия

Чтение файлов и запись в них

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

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

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

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

Python академия

Распространенные команды pdb

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

Как и любой console log, pdb скажет вам, на какой строчке ваш код сломался.

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

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

Python академия

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

Сортировка данных словаря по значениям ключей, а не по самим ключам, нередко ставит в тупик.

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

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

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

Python академия

Дизассемблирование

Встроенный модуль dis позволяет декомпилировать написанную вами программу в байт-код Python.

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

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

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

Python академия

Обнаружение плагиата

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

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

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

Python академия

Перевод текста

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

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

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

Python академия

Получаем и задаем лимит рекурсии

В Python не оптимизируется хвостовая рекурсия, из-за чего зачастую возникает RecursionError во время создания рекурсивных алгоритмов.

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

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

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

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

Python академия

Получаем метаданные из аудиофайла

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

Модуль поддерживает форматы метаданных APEv2 и ID3v2, анализируя все кадры ID3v2.4.

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

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

Python академия

Обработка исключений

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

Существует базовое исключение BaseException от которого наследуются все остальные исключения.

В блоке try мы выполняем инструкцию, которая может породить исключение, а в блоке except мы ловим ошибки и делаем свои операции.

Стоит учесть, что мы можем делать бесконечное количество вложенных блоков.

Грамотным способом является вылавливать только те исключения, которые мы ожидаем.

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

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

Python академия

Управление версиями Python

Инструмент pyenv позволяет легко переключаться между несколькими версиями Python. Он прост в использовании и следует лучшим традициям UNIX, где каждая утилита хорошо выполняет одну свою задачу.

Вкратце, основной функционал pyenv выглядит так:

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

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

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

Python академия

Аннотации типов

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

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

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

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

Python академия

Рисуем графики

Графическая библиотека plotly позволяет создавать интерактивные качественные графики в Python.

В сегодняшнем примере применим эту библиотеку чтобы построить простой линейный график.

Сначала нам нужен список с данными, которые мы хотим изобразить на графике. Это может быть, например, список или numpy массив:
data = [1, 1.3, 2.1, 4, 3.5, 7]
Далее метод fig = px.line(y=data) принимает наши данные и строит график в виде точек с координатами из массива и обьединяет их линиями.

Метод fig.show() откроет графическое окно с изображенным графиком.

Кроме этого plotly позволяет строить такие графики как:

— Точечные графики;
— Круговые диаграммы;
— Гистограммы;
— Тепловые карты;
— Пузырьковые диаграммы;
— И многие другие.

Больше подробно об этой библиотеке и способы ее применения можно посмотреть тут.

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

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

Python академия

Работа с ChainMap из collections

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

Иногда нам нужно сгруппировать словари в один или же работать с множеством словарей как с одним, в этом случае вам поможет ChainMap.

Немного про особенности ChainMap:

— Представляет тот же интерфейс, что и словарь, но с дополнительными возможностями;
— Создает обновляемое представление;
— Видит внешние изменения во входных отображениях.

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

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

Python академия

Создание словаря из набора ключей

Для создания словаря из известного набора ключей и одинаковых значений часто используют генераторы словарей (dict comprehensions).

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

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

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

Python академия

Функция reduce

Модуль functools позволяет хорошо раскрыть функциональные возможности Python. Например, в functools есть интересная функция reduce, которая позволяет «сжимать» данные, применяя последовательно функцию и запоминая результат.

Таким образом, в примере выше reduce умножает 1 на 2, затем результат этого умножения на 3 и так далее.

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

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

Python академия

Функция zip

Функция zip создаёт итератор, который комбинирует элементы нескольких списков. Это позволяет осуществлять параллельный обход списков в циклах for или, например, выполнять параллельную сортировку.

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

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

Python академия

Скачивание постов и изображений профиля из Instagram

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

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

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

Python академия

Как извлечь аудио из видеофайлов

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

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

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

Python академия

Подборка Telegram каналов для программистов

Системное администрирование 📌
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин

/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux

1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus

Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах

GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
/channel/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
/channel/game_devv Все о разработке игр

Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов

БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста

QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика

Шутки программистов 📌
/channel/itumor Шутки программистов

Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_1 Статьи из "Хакера"

Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров

Английский 📌
/channel/UchuEnglish Английский с нуля

Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике

Excel лайфхак📌
/channel/Excel_lifehack

/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)

Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT

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

Python академия

Wikipedia в Python

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

Устанавливается этот модуль через пакетный менеджер pip. А использовать его можно без всяких трудностей – всё самое важное показано на картинке.

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

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

Python академия

Станьте разработчиком нейро-сотрудников на Python и зарабатывайте от 150.000р в месяц 🔥🔥🔥

Мы научим вас создавать топовых нейро-сотрудников на базе GPT-4 Omni, и вы сможете:
1️⃣ Устроиться разработчиком в крупную компанию и зарабатывать от 150 тысяч ₽ в месяц
2️⃣ Разрабатывать такие проекты на заказ и зарабатывать от 500 тысяч ₽ за проект
3️⃣ Создать нейро-сотрудника в вашей компании и вырасти на +30-100% в зарплате

Что будет на интенсиве?
🧬 Теория: как создаются нейро-сотрудники с GPT-4o на Python
🧬 Практика: мы создадим нейро-консультанта, нейро-HR, нейро-маркетолога и др.

Ведущий интенсива - Senior AI разработчик нейросетей и основатель Университета искусственного интеллекта
🔥 Регистрируйтесь на бесплатный интенсив! Встречаемся в ближайший четверг!

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

Python академия

Каждая функция должна выполнять какое-то одно действие и делать это хорошо

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

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

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

Python академия

Имя функции не определено

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

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

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

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

Python академия

Генераторные выражения (generator expressions)

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

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

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

Python академия

Генераторные фунции (generator functions)

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

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

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

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

Python академия

Профилирование

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

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

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

Python академия

Удаление дублирующихся данных

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

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

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

Python академия

Удаление URL-адресов

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

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

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

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