Методы list в Python
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас часть этих методов.
1. append() - добавляет элемент в конец списка.
2. clear() - удаляет все элементы из списка
3. copy() - делает поверхностную копию списка. Почему нужно пользоваться именно этим методом, а не присваиванием мы разбирали в другой статье.
4. count() - считает, сколько раз в списке встречается переданный аргумент.
Разъяснивший Python
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас часть этих методов.
1. append() - добавляет элемент в конец списка.
2. clear() - удаляет все элементы из списка
3. copy() - делает поверхностную копию списка. Почему нужно пользоваться именно этим методом, а не присваиванием мы разбирали в другой статье.
4. count() - считает, сколько раз в списке встречается переданный аргумент.
Разъяснивший Python
Как использовать умное логгирование исключений с exc_info=True
Когда ловишь исключение и хочешь залоггировать стек, многие забывают важный параметр.
Итог
Добавляй exc_info=True к логгированию исключений — получишь полный стек и не потеряешь важные детали при отладке.
Разъяснивший Python
Когда ловишь исключение и хочешь залоггировать стек, многие забывают важный параметр.
Итог
Добавляй exc_info=True к логгированию исключений — получишь полный стек и не потеряешь важные детали при отладке.
Разъяснивший Python
Переопределение стандартного поведения функций через декоратор
Иногда хочется обернуть функцию, чтобы автоматически логировать её вызов или измерять время исполнения. Это удобно делать через декоратор.
Итог
Декораторы позволяют добавлять поведение к функциям, не изменяя их напрямую. Это мощный инструмент для логирования, кэширования, авторизации и прочих нужд.
Разъяснивший Python
Иногда хочется обернуть функцию, чтобы автоматически логировать её вызов или измерять время исполнения. Это удобно делать через декоратор.
Итог
Декораторы позволяют добавлять поведение к функциям, не изменяя их напрямую. Это мощный инструмент для логирования, кэширования, авторизации и прочих нужд.
Разъяснивший Python
Нюансы работы с merge
В pandas метод merge() используется для объединения двух датафреймов по одному или нескольким ключевым столбцам, аналогично SQL-операции JOIN. В данной статье автор рассказывает, с какими нюансами ты можешь столкнуться при использовании merge.
Читать статью
Разъяснивший Python
В pandas метод merge() используется для объединения двух датафреймов по одному или нескольким ключевым столбцам, аналогично SQL-операции JOIN. В данной статье автор рассказывает, с какими нюансами ты можешь столкнуться при использовании merge.
Читать статью
Разъяснивший Python
Хабр
Что может пойти не так с merge() — дубли, потери, ошибки типов
Привет, Хабр! Тонкое скрещивание DataFrame-ов в pandas по-прежнему остаётся источником прелестных багов: случайных дубликатов, потерянных строк и неуловимых NaN-ов. В статье рассмотрим эти проблемы....
Повтор последнего результата в Python REPL
Если работаешь в интерактивном режиме Python (REPL), тебе не обязательно каждый раз сохранять результат в переменную — предыдущий результат всегда доступен через _.
Итог:
Символ _ в интерактивной консоли Python хранит результат последнего выражения — удобно для быстрых вычислений и экспериментов без создания переменных.
Разъяснивший Python
Если работаешь в интерактивном режиме Python (REPL), тебе не обязательно каждый раз сохранять результат в переменную — предыдущий результат всегда доступен через _.
Итог:
Символ _ в интерактивной консоли Python хранит результат последнего выражения — удобно для быстрых вычислений и экспериментов без создания переменных.
Разъяснивший Python
Следишь за своей видеокартой?
Скрипт, который:
Показывает загрузку GPU
Отображает объём свободной/занятой памяти
Показывает температуру
Код:
Разъяснивший Python
Скрипт, который:
Показывает загрузку GPU
Отображает объём свободной/занятой памяти
Показывает температуру
Код:
# pip install GPUtil tabulate
import GPUtil
from tabulate import tabulate
from typing import List, Tuple
def gpu_info() -> str:
"""
Получает информацию о доступных GPU: загрузка, температура, объём памяти.
Возвращает отформатированную таблицу.
"""
gpus = GPUtil.getGPUs()
gpus_list: List[Tuple] = []
for gpu in gpus:
gpus_list.append((
gpu.id,
gpu.name,
f"{gpu.load * 100:.1f}%",
f"{gpu.memoryFree}MB",
f"{gpu.memoryUsed}MB",
f"{gpu.memoryTotal}MB",
f"{gpu.temperature}°C"
))
return tabulate(
gpus_list,
headers=["id", "name", "load", "free memory", "used memory", "total memory", "temperature"],
tablefmt="pretty"
)
if __name__ == "__main__":
print(gpu_info())
Разъяснивший Python
Удаление дубликатов, сохраняя порядок
Стандартный set() удаляет дубликаты, но не сохраняет порядок. Чтобы сохранить порядок элементов, можно использовать dict.fromkeys().
Итог
dict.fromkeys() — простой и читаемый способ удалить дубликаты из списка, сохранив порядок появления. Работает быстро и не требует сторонних библиотек.
Разъяснивший Python
Стандартный set() удаляет дубликаты, но не сохраняет порядок. Чтобы сохранить порядок элементов, можно использовать dict.fromkeys().
Итог
dict.fromkeys() — простой и читаемый способ удалить дубликаты из списка, сохранив порядок появления. Работает быстро и не требует сторонних библиотек.
Разъяснивший Python
This media is not supported in your browser
VIEW IN TELEGRAM
Полезные библиотеки Python
Doc2Image — превращай документы в картинки, а тексты в визуальные идеи.
Когда обычного текста мало, а нужно показать смысл, на помощь приходит Doc2Image — нейросервис, который читает документы и генерирует по ним визуальные подсказки для Midjourney, DALL·E и других генераторов.
Как работает:
Ты загружаешь документ — он сам вычленяет суть, превращает её в понятное описание и подсказывает, какое изображение можно создать.
Поддержка как OpenAI, так и локальных моделей.
Удобный интерфейс и история всех запросов.
Работает быстро и без лишней магии — просто берёт и делает.
Идеально для дизайнеров, маркетологов, ресерчеров, презентаций и визуального контента по любой теме.
⚙️ GitHub/Инструкция
Разъяснивший Python
Doc2Image — превращай документы в картинки, а тексты в визуальные идеи.
Когда обычного текста мало, а нужно показать смысл, на помощь приходит Doc2Image — нейросервис, который читает документы и генерирует по ним визуальные подсказки для Midjourney, DALL·E и других генераторов.
Как работает:
Ты загружаешь документ — он сам вычленяет суть, превращает её в понятное описание и подсказывает, какое изображение можно создать.
Поддержка как OpenAI, так и локальных моделей.
Удобный интерфейс и история всех запросов.
Работает быстро и без лишней магии — просто берёт и делает.
Идеально для дизайнеров, маркетологов, ресерчеров, презентаций и визуального контента по любой теме.
⚙️ GitHub/Инструкция
Разъяснивший Python
Детектор утечек
С помощью данного скрипта ты узнаешь, сливали ли твои имейлы или пароли. Делается это с помощью HaveIBeenPwned API. Ты вводишь email или пароль для проверки, а в ответ выводится список сайтов, где была компрометация.
Ссылка на код
Разъяснивший Python
С помощью данного скрипта ты узнаешь, сливали ли твои имейлы или пароли. Делается это с помощью HaveIBeenPwned API. Ты вводишь email или пароль для проверки, а в ответ выводится список сайтов, где была компрометация.
Ссылка на код
Разъяснивший Python
❤1
Что такое
Пример:
Подробнее тут
Разъяснивший Python
logging
в Python?logging
— это встроенный модуль Python для создания логов, которые помогают отлаживать и мониторить работу приложений.Пример:
import logging
# Настройка базового уровня логирования
logging.basicConfig(level=logging.INFO)
# Создание лога
logging.info("Приложение запущено")
logging.warning("Это предупреждение!")
logging.error("Произошла ошибка")
🗣 В этом примере модуль logging создаёт сообщения разного уровня важности. Логирование позволяет отслеживать работу приложений и находить проблемы в коде.
Подробнее тут
Разъяснивший Python
Python documentation
logging — Logging facility for Python
Source code: Lib/logging/__init__.py Important: This page contains the API reference information. For tutorial information and discussion of more advanced topics, see Basic Tutorial, Advanced Tutor...
Проверка существования атрибута без try/except
Иногда нужно понять, есть ли у объекта нужное свойство, и не хочется использовать try/except. В этом случае поможет встроенная функция hasattr().
Итог:
Функция hasattr() позволяет лаконично проверить наличие атрибута у объекта — читаемо и без лишних конструкций.
Разъяснивший Python
Иногда нужно понять, есть ли у объекта нужное свойство, и не хочется использовать try/except. В этом случае поможет встроенная функция hasattr().
Итог:
Функция hasattr() позволяет лаконично проверить наличие атрибута у объекта — читаемо и без лишних конструкций.
Разъяснивший Python
Пример использования tqdm
Tqdm (от арабского слова "taqadum", что означает "прогресс") — это библиотека Python, которая позволяет легко и быстро создавать индикаторы выполнения задач. Она особенно полезна при работе с длительными операциями, так как позволяет отслеживать ход выполнения и остаточное время.
Разъяснивший Python
Tqdm (от арабского слова "taqadum", что означает "прогресс") — это библиотека Python, которая позволяет легко и быстро создавать индикаторы выполнения задач. Она особенно полезна при работе с длительными операциями, так как позволяет отслеживать ход выполнения и остаточное время.
Разъяснивший Python
❤1
Отслеживатель подписок и расходов
В этот раз мы сделаем отслеживатель подписок и расходов. Он будет показывать сумму всех подписок в месяц, а также отображать, сколько тратится в год. Сохраняется это все в локальной SQLite-базе.
Ссылка на код
Разъяснивший Python
В этот раз мы сделаем отслеживатель подписок и расходов. Он будет показывать сумму всех подписок в месяц, а также отображать, сколько тратится в год. Сохраняется это все в локальной SQLite-базе.
Ссылка на код
Разъяснивший Python
Преобразование Word Doc или Docx в PDF в Python
Spire.Doc for Python предоставляет метод Document.LoadFromFile(), который позволяет пользователям загрузить файл Doc или Docx.
После этого можно выполнить преобразование в PDF с помощью метода Document.SaveToFile(string filename, ToPdfParameterList parameter).
Разъяснивший Python
Spire.Doc for Python предоставляет метод Document.LoadFromFile(), который позволяет пользователям загрузить файл Doc или Docx.
После этого можно выполнить преобразование в PDF с помощью метода Document.SaveToFile(string filename, ToPdfParameterList parameter).
Разъяснивший Python
Объединение словарей без update()
Нужно быстро объединить два словаря, не изменяя исходные? Используй оператор |, начиная с Python 3.9.
Итог:
Оператор | объединяет словари в один, не изменяя оригиналы. Это удобно, читаемо и декларативно.
Разъяснивший Python
Нужно быстро объединить два словаря, не изменяя исходные? Используй оператор |, начиная с Python 3.9.
Итог:
Оператор | объединяет словари в один, не изменяя оригиналы. Это удобно, читаемо и декларативно.
Разъяснивший Python
Преобразование PowerPoint PPT или PPTX в PDF в Python
Преобразование из PowerPoint в PDF также довольно просто.
Просто используйте метод Presentation.LoadFromFile() для загрузки файла PPT или PPTX, а затем конвертируйте его в PDF с помощью метода Presentation.SaveToFile().
Разъяснивший Python
Преобразование из PowerPoint в PDF также довольно просто.
Просто используйте метод Presentation.LoadFromFile() для загрузки файла PPT или PPTX, а затем конвертируйте его в PDF с помощью метода Presentation.SaveToFile().
Разъяснивший Python
❤1🤨1
Библиотека python-decouple
Библиотека python-decouple для Python помогает отделить конфигурационные параметры от вашего исходного кода. Это означает, что вы можете хранить секретные данные, такие как ключи API, пароли и URL-адреса базы данных, вне вашего кода, улучшая безопасность.
Разъяснивший Python
Библиотека python-decouple для Python помогает отделить конфигурационные параметры от вашего исходного кода. Это означает, что вы можете хранить секретные данные, такие как ключи API, пароли и URL-адреса базы данных, вне вашего кода, улучшая безопасность.
Разъяснивший Python
Заморозка dataclass с frozen=True
Хочешь сделать неизменяемый объект — как namedtuple, но с преимуществами dataclass? Просто добавь frozen=True.
Итог:
frozen=True превращает dataclass в неизменяемый и хешируемый объект. Отлично для безопасного и предсказуемого кода.
Разъяснивший Python
Хочешь сделать неизменяемый объект — как namedtuple, но с преимуществами dataclass? Просто добавь frozen=True.
Итог:
frozen=True превращает dataclass в неизменяемый и хешируемый объект. Отлично для безопасного и предсказуемого кода.
Разъяснивший Python
Упрощённая проверка аргументов через __post_init__ в dataclass
Иногда тебе нужно добавить валидацию данных при создании объекта dataclass. Вместо написания кастомного init, просто используй post_init!
Итог
post_init — отличный способ добавить проверку инициализации в dataclass, не нарушая автоматические преимущества этого декоратора.
Разъяснивший Python
Иногда тебе нужно добавить валидацию данных при создании объекта dataclass. Вместо написания кастомного init, просто используй post_init!
Итог
post_init — отличный способ добавить проверку инициализации в dataclass, не нарушая автоматические преимущества этого декоратора.
Разъяснивший Python
contextlib.suppress — элегантное подавление исключений
Иногда нужно проигнорировать определённое исключение, но писать try/except кажется избыточным. В этом случае поможет contextlib.suppress.
Это удобно при удалении временных файлов, работе с кэшем и т.п., где FileNotFoundError, например, — не критичен.
Итог:
contextlib.suppress делает код чище, устраняя лишние try/except блоки, если ты сознательно игнорируешь конкретное исключение.
Разъяснивший Python
Иногда нужно проигнорировать определённое исключение, но писать try/except кажется избыточным. В этом случае поможет contextlib.suppress.
Это удобно при удалении временных файлов, работе с кэшем и т.п., где FileNotFoundError, например, — не критичен.
Итог:
contextlib.suppress делает код чище, устраняя лишние try/except блоки, если ты сознательно игнорируешь конкретное исключение.
Разъяснивший Python
🤝2