Pylint - популярный линтер для Python версий 2.x/3.x.
Он проверяет код на соответствие PEP-8.
А также непосредственно запускает его, чтобы найти ошибки.
Либо какие-то неочевидные проблемы.
Также линтер сообщает разработчику, как улучшить свой код или сделать его более читабельным.
Крч для Python разработчика — Must Have
Ставится командой ⚙️
Документация и примеры кода здесь
Разъяснивший Python
Он проверяет код на соответствие PEP-8.
А также непосредственно запускает его, чтобы найти ошибки.
Либо какие-то неочевидные проблемы.
Также линтер сообщает разработчику, как улучшить свой код или сделать его более читабельным.
Крч для Python разработчика — Must Have
Ставится командой ⚙️
pip install pylint
Документация и примеры кода здесь
Разъяснивший Python
🔥1
Как легко сконвертировать изображение в любой нужный формат (например JPG -> PNG)?
Для этого в модуле Pillow есть методы save() и convert(), которые позволяют сохранить ваше фото в новом формате или просто переименовать его, например, image.jpg в img.png
Для того чтобы сделать это в Python, нужно сначала установить Pillow:
Затем напишите следующий код:
Замените "имя_файла.jpg" на ваше имя файла или путь к нему, и после запуска этого кода ваше фото будет сохранено в формате PNG.
В случае обратной конвертации (например, из PNG в JPG) может потребоваться смена режима.
Для этого используем метод convert():
Ставится командой ⚙️
Документация Pillow здесь
Подробнее про смену режима — convert()
Разъяснивший Python
Для этого в модуле Pillow есть методы save() и convert(), которые позволяют сохранить ваше фото в новом формате или просто переименовать его, например, image.jpg в img.png
Важно понимать, что в таком случае меняется не просто расширение файла, но и сами метаданные внутри файла!
Для того чтобы сделать это в Python, нужно сначала установить Pillow:
pip install pillow
Затем напишите следующий код:
from PIL import Image
img = Image.open("имя_файла.jpg")
img.save("имя_файла.png")
Замените "имя_файла.jpg" на ваше имя файла или путь к нему, и после запуска этого кода ваше фото будет сохранено в формате PNG.
В случае обратной конвертации (например, из PNG в JPG) может потребоваться смена режима.
Для этого используем метод convert():
img = img.convert('RGB')
Ставится командой ⚙️
pip install pillow
Документация Pillow здесь
Подробнее про смену режима — convert()
Разъяснивший Python
❤1
Boto3 - официальный SDK (Software Development Kit), для работы с Amazon Web Services (AWS) и для работы с их облачными сервисами на Python.
Это мощный инструмент , который позволяет разработчикам создавать, управлять различные задачи в облаке, такие как работа с хранилищем файлов S3, виртуальными серверами EC2, базой данных DynamoDB и многими другими сервисами.
Разработана кнш самой компанией Amazon, библиотека также обеспечивает широкие возможности интеграции с AWS, что делает её популярным инструментом среди программистов, работающих с облаками.
Ставится командой ⚙️
Официальная документация и примеры кода здесь
Разъяснивший Python
Это мощный инструмент , который позволяет разработчикам создавать, управлять различные задачи в облаке, такие как работа с хранилищем файлов S3, виртуальными серверами EC2, базой данных DynamoDB и многими другими сервисами.
Разработана кнш самой компанией Amazon, библиотека также обеспечивает широкие возможности интеграции с AWS, что делает её популярным инструментом среди программистов, работающих с облаками.
Ставится командой ⚙️
pip install boto3
Официальная документация и примеры кода здесь
Разъяснивший Python
Скачиваем изображение с помощью ссылки в Python
Скопируйте этот код и замените текст <ссылка на ваше изображение> на реальную ссылку, например — https://github.com/github_logo.jpg
Таким же образом можно скачивать любые мелкие файлы.
Текстовые, архивы, иконки и тд.
Главное не забудьте поставить библиотеку requests командой ⚙️
Разъяснивший Python
import requests
url = "<ссылка на ваше изображение>"
response = requests.get(url)
with open("image.jpg", "wb") as file:
file.write(response.content)
print("Изображение успешно загружено.")
Скопируйте этот код и замените текст <ссылка на ваше изображение> на реальную ссылку, например — https://github.com/github_logo.jpg
Таким же образом можно скачивать любые мелкие файлы.
Текстовые, архивы, иконки и тд.
Главное не забудьте поставить библиотеку requests командой ⚙️
pip install requests
Разъяснивший Python
Словарь с "молчаливыми" значениями — defaultdict
Когда работаешь со словарём, часто нужно сначала проверять, есть ли ключ. С defaultdict от collections это делается автоматически.
Итог:
defaultdict избавляет от лишних проверок и упрощает код, особенно когда нужно агрегировать или группировать данные.
Разъяснивший Python
Когда работаешь со словарём, часто нужно сначала проверять, есть ли ключ. С defaultdict от collections это делается автоматически.
Итог:
defaultdict избавляет от лишних проверок и упрощает код, особенно когда нужно агрегировать или группировать данные.
Разъяснивший Python
Как красиво подставлять переменные в строку?
Новички часто используют конкатенацию (+) или .format() для создания строк с переменными, но это может быть громоздко и неудобно. Python предлагает современный и удобный способ — f-строки (форматированные строки), которые позволяют подставлять значения прямо внутрь строки с минимальным синтаксисом.
Для этого перед строкой нужно поставить f, а переменные — обернуть в фигурные скобки {}.
Итог:
f-строки — простой и читаемый способ форматирования.
Позволяют вставлять выражения прямо в строку.
Быстрее и удобнее, чем .format() или +.
Разъяснивший Python
Новички часто используют конкатенацию (+) или .format() для создания строк с переменными, но это может быть громоздко и неудобно. Python предлагает современный и удобный способ — f-строки (форматированные строки), которые позволяют подставлять значения прямо внутрь строки с минимальным синтаксисом.
Для этого перед строкой нужно поставить f, а переменные — обернуть в фигурные скобки {}.
Итог:
f-строки — простой и читаемый способ форматирования.
Позволяют вставлять выражения прямо в строку.
Быстрее и удобнее, чем .format() или +.
Разъяснивший Python
👍1
Как узнать, есть ли элемент в списке?
Иногда нужно проверить, содержится ли элемент в списке. Новички могут использовать циклы, но Python предлагает более быстрый способ — оператор in.
Этот приём позволяет проверить наличие элемента за одну строку: "item" in list1 возвращает True, если элемент есть в списке, и False, если нет.
Итог:
Проверка за одну строку.
Читается как обычное предложение.
Работает мгновенно!
Разъяснивший Python
Иногда нужно проверить, содержится ли элемент в списке. Новички могут использовать циклы, но Python предлагает более быстрый способ — оператор in.
Этот приём позволяет проверить наличие элемента за одну строку: "item" in list1 возвращает True, если элемент есть в списке, и False, если нет.
Итог:
Проверка за одну строку.
Читается как обычное предложение.
Работает мгновенно!
Разъяснивший Python
Bottle — это мини-фреймворк для Python, позволяющий писать веб-приложения с высокой скоростью, и он представлен в виде одного файла bottle.py, так что для его работы достаточно только этого файла.
Мы все обожаем примеры, поэтому вот код для начала работы с Bottle:
Здесь мы создали веб сервер по адресу localhost с портом 8080.
Вы можете изменить текст "Hello {{name}}" на любой другой текст.
Чтобы проверить его работу, просто перейдите по ссылке http://localhost:8080/hello/world. После этого вы увидите на экране "Hello World".
Повторюсь, Bottle распространяется в виде одного файла-модуля и не имеет никаких зависимостей, кроме стандартной библиотеки Python.
Ставится командой ⚙️
Официальная документация только на английском
Русская документация
Разъяснивший Python\
Мы все обожаем примеры, поэтому вот код для начала работы с Bottle:
from bottle import route, run, template
@route('/hello/<name>')
def index(name):
return template('<b>Hello {{name}}</b>!', name=name)
run(host='localhost', port=8080)
Здесь мы создали веб сервер по адресу localhost с портом 8080.
Вы можете изменить текст "Hello {{name}}" на любой другой текст.
Чтобы проверить его работу, просто перейдите по ссылке http://localhost:8080/hello/world. После этого вы увидите на экране "Hello World".
Повторюсь, Bottle распространяется в виде одного файла-модуля и не имеет никаких зависимостей, кроме стандартной библиотеки Python.
Ставится командой ⚙️
pip install bottle
Официальная документация только на английском
Русская документация
Разъяснивший Python\
The Экономист
⚡️Уже ЗАВТРА мы подведём итоги масштабного розыгрыша — троим из вас достанется новенький iPhone 16!
Самое время подписаться на @economica, @ruble30 и @trendswhat и нажать «Участвую!» под этим постом, если вы ещё этого не сделали. Результаты уже завтра в 18:00!
Самое время подписаться на @economica, @ruble30 и @trendswhat и нажать «Участвую!» под этим постом, если вы ещё этого не сделали. Результаты уже завтра в 18:00!
Проверка аргументов функций — assert как мини-валидация
Иногда нужно быстро проверить корректность аргументов функции. Можно использовать assert для встроенной валидации прямо в начале.
Итог:
assert — быстрый способ «подстелить соломку» и отлавливать очевидные ошибки ещё до выполнения основного тела функции. Особенно полезно в прототипах и тестах.
Разъяснивший Python
Иногда нужно быстро проверить корректность аргументов функции. Можно использовать assert для встроенной валидации прямо в начале.
Итог:
assert — быстрый способ «подстелить соломку» и отлавливать очевидные ошибки ещё до выполнения основного тела функции. Особенно полезно в прототипах и тестах.
Разъяснивший Python
Получаем HTML код в Python с помощью библиотеки requests
Импортируем requests:
Добавляем
Получаем HTML разметку с помощью свойства text
Полный код
Более подробную информацию про работу с библиотекой requests можете прочитать здесь
Разъяснивший Python
Импортируем requests:
import requests
Добавляем
get("Ссылка")
чтобы requests знал, с чем вы работаете, к примеру укажем страницу Googlesite = requests.get("https://google.com")
Получаем HTML разметку с помощью свойства text
html_code = site.text
Полный код
# Импортируем requests
import requests
# Добавляем get("Ссылка") чтобы requests знал, с чем мы работаем. Например, укажем страницу Google
site = requests.get("https://google.com")
# Получаем HTML разметку с помощью text
html_code = site.text
# Выводим HTML код
print(html_code)
Более подробную информацию про работу с библиотекой requests можете прочитать здесь
Разъяснивший Python
🤯2
APScheduler — это инструмент для автоматизации задач в Python. Он позволяет планировать выполнение задач в определённое время или через интервалы.
Можно настроить задачи по расписанию, например, ежедневно или еженедельно. Это удобно для регулярных действий, таких как отправка уведомлений или обновление данных.
Ставится командой ⚙️
Документация и примеры кода здесь.
Разъяснивший Python
Можно настроить задачи по расписанию, например, ежедневно или еженедельно. Это удобно для регулярных действий, таких как отправка уведомлений или обновление данных.
Ставится командой ⚙️
pip install APScheduler
Документация и примеры кода здесь.
Разъяснивший Python
ReadWriteMemory — это топовая библиотека, позволяющая легко читать/записывать в память любого процесса.
С её помощью можно, например, сделать читы для игры.
А если подрубить такие библиотеки, как imGui, то можно вывести и оверлей чита.
Либо сделать простой трейнер.
Ставится командой
Документация и примеры кода здесь.
Разъяснивший Python
С её помощью можно, например, сделать читы для игры.
А если подрубить такие библиотеки, как imGui, то можно вывести и оверлей чита.
Либо сделать простой трейнер.
Ставится командой
pip install ReadWriteMemory
Документация и примеры кода здесь.
Разъяснивший Python
Как оптимизировать память используя генераторы вместо списков
Когда мы работаем с большими наборами данных, важно помнить об эффективном использовании памяти. Одной из полезных фишек Python для оптимизации памяти является использование генераторов вместо списков.
Пример кода
Допустим, у нас есть задача найти квадраты чисел от 1 до 1 000 000. Сначала посмотрим, как это сделать с помощью списка:
Этот код создает список квадратов чисел, что требует значительного объема памяти. Вместо этого можно использовать генератор, который создаст объекты по мере их запроса, не занимая много памяти:
Теперь squares - это генератор, который генерирует квадраты чисел по мере необходимости, занимая минимальное количество памяти.
Разъяснивший Python
Когда мы работаем с большими наборами данных, важно помнить об эффективном использовании памяти. Одной из полезных фишек Python для оптимизации памяти является использование генераторов вместо списков.
Пример кода
Допустим, у нас есть задача найти квадраты чисел от 1 до 1 000 000. Сначала посмотрим, как это сделать с помощью списка:
# Плохая практика: использование списка
squares = [x**2 for x in range(1, 1000001)]
Этот код создает список квадратов чисел, что требует значительного объема памяти. Вместо этого можно использовать генератор, который создаст объекты по мере их запроса, не занимая много памяти:
# Лучшая практика: использование генератора
squares = (x**2 for x in range(1, 1000001))
Теперь squares - это генератор, который генерирует квадраты чисел по мере необходимости, занимая минимальное количество памяти.
Разъяснивший Python
Модуль dataclasses предназначен для упрощения создания классов данных.
Он предоставляет декоратор и набор инструментов, которые автоматически генерируют основные методы класса, такие как
В примере выше мы используем декоратор @dataclass, чтобы автоматически сгенерировать методы класса Point. Мы определяем поля x, y и z, которые представляют координаты точки. После создания экземпляра класса Point с помощью аргументов конструктора, мы можем напрямую выводить информациюreprтод
Подробнее здесь
Разъяснивший Python
Он предоставляет декоратор и набор инструментов, которые автоматически генерируют основные методы класса, такие как
__init__()
, __repr__()
, __eq__()
, и другие. Это упрощает создание классов, которые служат простым хранилищем данных, без необходимости вручную определять все методыВ примере выше мы используем декоратор @dataclass, чтобы автоматически сгенерировать методы класса Point. Мы определяем поля x, y и z, которые представляют координаты точки. После создания экземпляра класса Point с помощью аргументов конструктора, мы можем напрямую выводить информациюreprтод
__repr__()
автоматически сгенерирован. Это делает код более лаконичным и удобным для использования.Подробнее здесь
Разъяснивший Python
Безопасное закрытие ресурсов с contextlib.suppress
Иногда нужно проигнорировать конкретные ошибки, не загромождая код try/except-блоками. contextlib.suppress делает это изящно.
Итог:
Разъяснивший Python
Иногда нужно проигнорировать конкретные ошибки, не загромождая код try/except-блоками. contextlib.suppress делает это изящно.
Итог:
contextlib.suppress
помогает лаконично и безопасно игнорировать конкретные исключения, не засоряя код лишней обработкой.Разъяснивший Python
Задачи с LeetCode: Two Sum
Продолжаем делиться циклом видео, где автор решает различные задачи с LeetCode.
Дан массив целых чисел nums и целое число target. Найти индексы двух чисел, сумма которых равна target. Гарантируется, что такой ответ существует и каждый элемент используется не более одного раза.
Пример:
👀Смотреть видео
Разъяснивший Python
Продолжаем делиться циклом видео, где автор решает различные задачи с LeetCode.
Дан массив целых чисел nums и целое число target. Найти индексы двух чисел, сумма которых равна target. Гарантируется, что такой ответ существует и каждый элемент используется не более одного раза.
Пример:
nums = [2, 7, 11, 15], target = 9
# Ответ: [0, 1], потому что nums[0] + nums[1] = 2 + 7 = 9
👀Смотреть видео
Разъяснивший Python
Простое логирование времени выполнения кода с timeit
Нужно быстро узнать, сколько времени занимает участок кода? Не нужно писать таймеры вручную — есть
Итог
Модуль
Разъяснивший Python
Нужно быстро узнать, сколько времени занимает участок кода? Не нужно писать таймеры вручную — есть
timeit
.Итог
Модуль
timeit
— удобный способ измерить производительность кода без лишней возни с time. Особенно полезен при сравнении разных реализаций.Разъяснивший Python
Модуль Faker поможет создавать реалистичные тестовые данные.
Независимо от того, нужны ли вам данные для тестирования, заполнения базы данных или демонстрации функционала, Faker делает процесс генерации данных простым и эффективным.
Faker предоставляет генераторы для различных типов данных, таких как имена, адреса, номера телефонов, электронные почты, даты, текст и многое другое. Это идеальное решение для тех, кто хочет ускорить процесс тестирования.
На примере выше мы написали функцию generate_fake_user, которая использует различные методы Faker, чтобы создать случайные данные для имени, электронной почты, номера телефона и адреса. Затем мы выводим полученные данные о пользователе.
Ставится командой ⚙️
Разъяснивший Python
Независимо от того, нужны ли вам данные для тестирования, заполнения базы данных или демонстрации функционала, Faker делает процесс генерации данных простым и эффективным.
Faker предоставляет генераторы для различных типов данных, таких как имена, адреса, номера телефонов, электронные почты, даты, текст и многое другое. Это идеальное решение для тех, кто хочет ускорить процесс тестирования.
На примере выше мы написали функцию generate_fake_user, которая использует различные методы Faker, чтобы создать случайные данные для имени, электронной почты, номера телефона и адреса. Затем мы выводим полученные данные о пользователе.
Ставится командой ⚙️
pip3 install faker
Документация и примеры кода здесь Разъяснивший Python
❤3
Что такое
➡️ Пример:
Разъяснивший Python
enumerate()
в Python и зачем он нужен?enumerate()
— это встроенная функция, которая добавляет счётчик к итерируемому объекту. Полезна, когда нужно получить и индекс, и значение при переборе списка, строки или любого итератора.➡️ Пример:
fruits = ['яблоко', 'банан', 'вишня']
for index, fruit in enumerate(fruits):
print(f"{index}: {fruit}")
0: яблоко
1: банан
2: вишня
🗣 Без enumerate() пришлось бы вручную управлять счётчиком. Это делает код чище, читаемее и более "питоничным".
Разъяснивший Python
👍2