Когда нам может понадобится определить из полученной строки литеральный тип (строки, числа, списки, кортежи, словари, логические значения и None), мы можем воспользоваться функцией literal_eval() из модуля ast.
Данная функция поможет безопасно определить литеральный тип, а в случае если был передан не литерал, то выбросит исключение. Это можно использовать для оценки выражений из внешних источников при парсинге файлов, либо пользовательского ввода.
🌎 How to Design Programs: An Introduction to Programming and Computing, 2nd Edition. Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi. MIT Press (2018)
❔ Чему вы научитесь:
🔵 применять «рецепт проектирования» — пошаговый метод от постановки задачи к функции;
🔵 проектировать данные и выводить структуру программы из структуры данных;
🔵 писать тесты до реализации и использовать их как часть проектирования;
🔵 работать с рекурсией, порождённой самоподобными данными;
🔵 применять абстракцию и функции высшего порядка для устранения повторов;
🔵 использовать аккумуляторы и управлять состоянием осознанно.
"How to Design Programs" — книга не про конкретный язык, а про систематический метод проектирования: язык (учебный диалект Racket) здесь второстепенен и намеренно минимален. Порог входа нулевой, но подход академический — это курс мышления, а не быстрый старт для практической разработки. Доступна бесплатно онлайн; второе издание существенно переработано.
Как платить за границей и за зарубежные сервисы в 2026 году?
Можно переплачивать посредникам 10–15%, возить в отпуск пачку наличных и каждый раз гадать, пройдёт ли оплата. А можно выпустить международную карту Lumio Pay и платить как раньше.
— выпуск в Telegram за 2 минуты
— пополнение рублями по СБП или в USDT
— курс виден до оплаты (выгоднее конкурентов на 15-18%)
— отели, такси, подписки, нейросети и игры — одной картой
Подписчикам — персональная скидка 50% на выпуск карты.
📖 Mastering Python for Artificial Intelligence: Learn the Essential Coding Skills to Build Advanced AI Applications by David Ward
▬▬▬▬▬▬▬▬
Язык: #English
Уровень: #Средний
Год выпуска: 2023
Это книга, предназначенная для разработчиков и программистов, желающих углубить свои знания и навыки в области искусственного интеллекта с использованием языка программирования Python. В книге обсуждаются существенные аспекты и методики программирования искусственного интеллекта, а также предлагаются руководства и практические примеры для создания более продвинутых AI-приложений. Авторы предоставляют читателям необходимые инструменты и знания для создания сложных и интеллектуальных систем с использованием Python, от обработки данных и машинного обучения до нейронных сетей и глубокого обучения.
🌎 Understanding Docker in a visual way: Learn & Discover Docker in sketchnotes (2024)
❔ Чему вы научитесь:
🔵 понимать базовые понятия: образы, контейнеры, слои, реестры;
🔵 писать Dockerfile и собирать собственные образы;
🔵 работать с томами и хранением данных контейнеров;
🔵 настраивать сети и связывать контейнеры между собой;
🔵 запускать многоконтейнерные приложения через Docker Compose;
🔵 ориентироваться в основных командах повседневной работы.
"Understanding Docker in a visual way" — весь материал подан через скетчноуты: рисованные схемы вместо сплошного текста, расчёт на визуальное запоминание. Формат вводный, порог входа низкий, подойдёт тем, кто лучше воспринимает картинки, чем документацию. Внутреннего устройства (namespaces, cgroups) на глубоком уровне ждать не стоит — это наглядное введение, а не разбор механики.
Начнем с функции combinations: она позволяет составлять комбинации элементов из итерируемых объектов без повторений. Первый аргумент это сам объект, а второй — длина комбинации.
Для того, чтобы составить комбинацию с повторениями, используют функцию combinations_with_replacement. Делает она абсолютно все то же самое что и предыдущая, с одним исключением – теперь в комбинации могут быть повторы.
Ну и в заключение, рассмотрим функцию compress, применяющую "маску" из второго аргумента функции к первому. То есть, если в маске на этом месте стоит единица, то в исходном массиве элемент остается нетронутым, и наоборот.
🌎 Effective C: An Introduction to Professional C Programming, 2nd Edition. Robert C. Seacord. No Starch Press (2024)
❔ Чему вы научитесь:
🔵 владеть базой языка: типы, объявления, выражения, управление потоком;
🔵 разбираться в работе с памятью: указатели, динамическое выделение, время жизни объектов;
🔵 корректно обрабатывать строки и символы, избегая типичных переполнений;
🔵 применять дисциплину обработки ошибок и проверять граничные условия;
🔵 понимать неопределённое поведение и писать переносимый код по стандарту C17/C23;
🔵 закладывать безопасность на уровне кода — область экспертизы автора.
"Effective C" — современное введение в C от эксперта по безопасному программированию из CERT: язык подаётся сразу с упором на корректность и защищённость кода, а не только на синтаксис. Рассчитана на тех, кто уже программирует и берётся за C всерьёз. Второе издание обновлено под стандарт C23. Книга учит не просто «чтобы работало», а чтобы не ломалось на граничных случаях.