Python на примерах
1.39K subscribers
411 photos
6 videos
145 links
Короткие уроки Python на примерах
Download Telegram
🙃 Иногда на собеседовании хочется просто исчезнуть.

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

💡 Был найден один суперский материал, который позволит:
🔹 Прокачать резюме — с акцентом на результат, а не «просто работу работал»
🔹 Составить чёткий рассказ о себе — кто ты, чем полезен, куда растёшь
🔹 Получить стратегию поиска и переговоров — от безопытного джуна до мидла
🔹 Узнать, как уверенно отвечать на «почему вы хотите у нас работать?» — без мемов 😉

📎 Курс на Stepik: Подготовка к собеседованию в IT: Резюме, Легенда, Стратегия
👉 https://stepik.org/a/243649

Собеседование — не экзамен. Это сделка, на которой должен заработать ты! 🎯

🎁 А для ЭТОГО и ЛЮБЫХ ДРУГИХ курсов на Stepik есть промокоды:
STEPIKSHORTS24 или STEPIKZON10 — активируй при оплате, чтобы сэкономить.
🚀 *Функция для переворота строки*

def reverse_string(s):
return s[::-1]

print(reverse_string("Python")) # nohtyP


Срезы - лучший друг Python-разработчика. Просто и мощно
Обмен переменными между Jupiter-блокнотами

Эта команда позволяет вам хранить любую переменную и использовать ее в различных блокнотах Jupyter.
Чтобы извлечь переменную, вам нужно ввести ту же команду с параметром ‘-r’.
Рисование без рук — управляй курсором глазами!

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

Как это работает?
1. MediaPipe FaceMesh отслеживает положение глаз.
2. Пересчитывает координаты в масштаб экрана.
3. Перемещает курсор в точку, куда смотрите.

Что можно делать?
1. Рисовать в Paint глазами (просто добавьте pyautogui.click()).
2. Играть без рук (управлять мышкой во время игры).
3. Помочь людям с ограниченными возможностями (альтернатива трекпаду).
❤4
Пример кода с использованием glob

Модуль glob находит все пути, совпадающие с заданным шаблоном в соответствии с правилами, используемыми оболочкой Unix. Обрабатываются символы "*" (произвольное количество символов), "?" (один символ), и диапазоны символов с помощью []. Для использования тильды "~" и переменных окружения необходимо использовать os.path.expanduser() и os.path.expandvars().
Ускорение компиляции с помощью numba

Если определённая часть твоего кода всё ещё работает медленно, попробуй библиотеку numba, чтобы компилировать код. numba ускоряет выполнение в 10-20 раз, так как компилирует код в машинные инструкции.
Pandas: Удаление дубликатов

pandas.dropduplicates() — метод в библиотеке pandas, который используется для удаления дубликатов строк из DataFrame. С помощью duplicated ты можешь проверить, имеются ли дубликаты.
Как объединить строки без цикла?

Когда нужно склеить несколько строк из списка в одну, новички часто используют цикл for и оператор +. Но в Python есть более быстрый и лаконичный способ — метод .join().

Метод join() принимает список строк и объединяет их через указанный разделитель. Это работает гораздо эффективнее циклов и особенно полезно при работе с большими объёмами текста.

Итог:
.join() — лучший способ объединения строк.
Работает быстро и читаемо.
Подходит для любых итерируемых объектов со строками.
👍2
Colorama — библиотека, позволяющая работать с цветом вывода в консоль.

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

Colorama также может менять текст на жирный и на тусклый. Всё это показано на скрине выше.

Работает на всех операционках.
В том числе адекватно отображается в классической командной строке Windows.
Использовать очень просто.

Ставится командой pip install colorama
Документация и примеры кода здесь
❤1👍1
Как удобно отформатировать строку с переменными?

Новички часто используют конкатенацию (+) для вставки переменных в строки. Это может быть неудобно и плохо читаемо. Вместо этого лучше использовать f-строки — современный и лаконичный способ форматирования строк в Python!

F-строки (или форматированные строки) позволяют вставлять переменные прямо внутрь строки с помощью фигурных скобок {}. Это и быстрее, и чище!

Итог:
-F-строки — самый читаемый и удобный способ форматирования.
-Позволяют вставлять выражения прямо в строку.
-Работают с любой версией Python 3.6+.
❤2
Как замерить время выполнения кода в Python?

Когда нужно понять, насколько быстро работает фрагмент кода, новички часто используют сторонние инструменты или пробуют измерять время "на глаз". Но в Python есть простой и встроенный способ - модуль time.

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

Итог:
- Используем time.time() для измерения скорости.
- Удобно для профилирования и отладки.
- Легко встроить в любой проект.
👍3
Cartopy

Cartopy — это Python-библиотека, предназначенная для создания карт и обработки геопространственных данных. Она построена на базе Matplotlib и обладает широким набором функций для создания профессиональных карт.
👍3
importlib.util.find_spec

importlib.util.find_spec позволяет узнать, можно ли импортировать модуль, не загружая его. Это полезно для проверки наличия зависимостей, динамической загрузки и построения систем плагинов.
Как присвоить несколько переменных в одну строку?

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

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

Итог:
Множественное присваивание упрощает код.
Позволяет присваивать значения сразу нескольким переменным.
Удобно для обмена значениями и распаковки структур.
Зачем нужны кортежи, если есть списки?

На это есть несколько причин. Во первых, кортеж защищен от изменений, как намеренных (что плохо), так и случайных (что хорошо).

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

В третьих, это возможность использовать кортежи в качестве ключей словаря.
Возврат нескольких значений

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

Здесь возвращается кортеж. С тем же эффектом можно было бы написать return (name, birthdate).

Это нормально для ограниченного количества возвращаемых значений. Но все, что превышает 3 значения, должно быть помещено в класс (data).
👍2
Получаем путь к текущему файлу

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

Функция os.path.abspath(__file__) возвращает абсолютный путь к текущему файлу, а os.path.dirname() — директорию, в которой он находится.
👍2
phonenumbers — это небольшая библиотека, для получения информации о номере телефона.

Что она умеет?

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

Сверху приведены два примера по валидации данных, но они возвращают разные значения

Почему так происходит?

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

При итерации по большому списку телефонных номеров использование phonenumbers.is_possible_number() даст более быстрые результаты по сравнению с phonenumbers.is_valid_number() . Но, как мы видим здесь, эти результаты не всегда правильны. Так что используйте на свой страх и риск.

Ставится командой ⚙️ pip install phonenumbers
Краткая документация(с pypi) и примеры кода здесь.
👍3
captcha — простая библиотека, которая генерирует заданную вами капчу!

Что умеет библиотека captcha?

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

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

Результат примера здесь.

Библиотека, кстати, досихпор обновляется, поэтому проблем быть не должно :3

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

Ставится командой ⚙️ pip install captcha
Краткая документация(с pypi) и примеры кода здесь!
PrettyTable — довольно полезный модуль для создания простых таблиц и вывода их в терминал или текстовый файл.

Модуль PrettyTable был вдохновлен таблицами ASCII, используемыми в оболочке PostgreSQL.

Возможности модуля PrettyTable:

• Установка ширины заполнения столбца, выравнивание текста или границы таблицы.
• Сортировка данных.
• Выбор отображения столбцов и строк в окончательном выводе.
• Чтение данных из CSV, HTML или курсора базы данных.
• Вывод данных в ASCII или HTML.
👍3
Работаем с переменными окружения в Python

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

Это удобно, безопасно и позволяет легко переключаться между разными окружениями (например, dev и prod).
👍3