Библиотека задач по Python | тесты, код, задания
6.84K subscribers
690 photos
8 videos
267 links
Задачи и тесты по Python для тренировки и обучения.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/9f7384d6

Работать у нас: https://job.proglib.io/

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
Размер в байтах

Функция на картинке возвращает длину строки в байтах, что пригодится, когда нужно будет узнать размер строковой переменной в памяти.
Зачем нужен wraps?

Декоратор functools.wraps используется для того, чтобы сохранить информацию о функции-оригинале при создании декоратора.
Когда мы создаем декоратор, он заменяет оригинальную функцию на обернутую. При этом теряется информация о названии функции, docstring и другие атрибуты.

Используя wraps, мы можем сохранить эти атрибуты. Таким образом декорированная функция будет выглядеть как оригинальная для программиста.

Это полезно для отладки и понимания кода. Например, при просмотре стека вызовов будет видно оригинальное имя функции, а не имя декоратора. При использовании help() будет выведен нужный docstring.
Как проверить, что в строке присутствуют только буквы и цифры?

Ответ на картинке.
Что выведет код сверху?
Anonymous Quiz
3%
2
19%
3
11%
4
67%
Error
Хэширование

Напомним, что Хэширование — это преобразование некоторого объема информации в уникальный набор символов, присущий только этому массиву информации. Широко используется в криптографии.

Для создания хэш-значений есть удобный модуль hashlib, содержащий ряд полезных хэш-функций. Использование довольно простое: в модуле имеется ряд конструкторов, соответствующих названиям хэш-функций. В конструктор мы можем передать байт-строку, хэш которой мы хотим получить, на выходе мы получим объект хэша.
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы

#️⃣C#

Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие профильные каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика

💼Каналы с вакансиями

Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
Объединение элементов списка и кортежа

Для объединения списка и кортежа в Python можно использовать оператор распаковки *.

В этом примере мы использовали оператор распаковки для объединения элементов списка my_list и кортежа my_tuple в один список new_list. Оператор * превращает итерируемый объект в последовательность аргументов, которые можно передать в другую функцию или структуру данных.
Каким будет результат следующего выражения -31 % 10?

Результатом выражения -31 % 10 будет 9. Это происходит потому, что для отрицательных чисел оператор % возвращает остаток от деления первого числа на второе немного другим образом. -31 % 10 = -3 — 1/10 и в ответ мы получим 10 — 1 = 9.
This media is not supported in your browser
VIEW IN TELEGRAM
🐍🗺 Создавайте захватывающие интерактивные карты с помощью Python

В новой статье разберём библиотеку визуализации данных Plotly. Шаг за шагом научимся создавать и настраивать простые и интерактивные карты, а также работать с картами Хороплета — особым типом карт, в которых используется цветовое кодирование для обозначения данных по конкретным географическим областям, таким как страны, штаты или города.

🔗 Читать статью
🔗 Зеркало
У вас есть список словарей, представляющих информацию о книгах. Каждый словарь содержит поля «название» (title), «автор» (author) и «год выпуска» (year). Напишите функцию на Python, которая принимает такой список книг и возвращает словарь, в котором ключами являются года выпуска, а значениями — списки книг, выпущенных в этот год. Книги в каждом списке должны быть упорядочены по алфавиту по названию.

Решение:

1. Используем defaultdict(list), чтобы автоматически создавать пустой список для каждого года.
2. Книги сортируем по названию перед группировкой, чтобы списки книг в каждом году были упорядочены по алфавиту.
3. Проходим по отсортированным книгам и добавляем их в соответствующие списки годов в словаре.
🐍 Итоги недели в мире Python и обзоры новых инструментов

У нас есть еженедельная рассылка о последних открытиях и тенденциях в мире Python. Мы опубликовали новый выпуск на 📰.

Ниже — небольшая часть выпуска, а целиком читайте здесь 👈

😏 Мнение: пора переключаться с бэкенда на ИИ

Общемировой тренд — увеличение спроса на ИИ-разработчиков. И у Python-специалистов есть огромное преимущество — они без особых усилий могут переключиться с бэкенда на машинное обучение. Автор этой публикации рассказал, с чего проще всего начать — с изучения супервостребованной RAG-технологии.

🎩 Hatchet — эффективная альтернатива Celery

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

🌐 Niquests — продвинутая альтернатива Requests

Новая библиотека лишена некоторых недостатков старой, а также имеет дополнительные фичи. Какие — подробно рассказываем в статье на vc.

Вы можете подписаться на email-рассылку здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
🐍🎸 Курс Django. Часть 3: Основы работы с формами

В новой части курса разбираем основные методы создания, кастомного рендеринга и кастомной валидации форм.

🔗 Читать статью
🔗 Зеркало

Предыдущие части:
Часть 1: Django — что это? Обзор и установка фреймворка, структура проекта
Часть 2: ORM и основы работы с базами данных
Вы реализуете функцию для анализа текста, которая должна возвращать слово, которое встречается в тексте наиболее часто, не учитывая регистр букв. Если два или более слов имеют одинаковую максимальную частоту, функция должна вернуть слово, которое встречается в тексте первым. Напишите эффективную функцию на Python для решения этой задачи.

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

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

Начните обучение с вводных занятий – https://proglib.io/w/e856750c

Вводные занятия содержат:

– лекцию по условным инструкциям if/else и зачем они нужны;
– лекцию по операциями с целыми и вещественными числами;
– практические задания для закрепления материала, которые научат работать с условными операторами и создавать вложенные инструкции.

👉 Переходите на страницу и активируйте доступ к вводным занятиям: https://proglib.io/w/e856750c
🐍🚀 Niquests: новый стандарт HTTP-клиентов в Python, превосходящий Requests

Библиотека Requests долгое время была де-факто стандартом для HTTP-запросов в Python, но у неё есть ряд серьезных недостатков. Инновационная библиотека Niquests не только исправляет ошибки Requests, но и предлагает множество улучшений.

В новой статье рассказываем обо всех преимуществах Niquests.

🔗 Читать статью
🔗 Зеркало