Learning Algorithms: A Programmer's Guide to Writing Better Code (2020)
Автор: George Heineman
Количество страниц: 280
Каждый профессионал в области программного обеспечения должен иметь эффективные практические знания об алгоритмах. В этой книге автор дает краткие и информативные описания ключевых алгоритмов, способных улучшить ваш код на всех языках. Разработчики программного обеспечения, тестировщики и специалисты по поддержке кода узнают, как творчески решать вычислительные задачи с помощью алгоритмов.
Скачать книгу
Автор: George Heineman
Количество страниц: 280
Каждый профессионал в области программного обеспечения должен иметь эффективные практические знания об алгоритмах. В этой книге автор дает краткие и информативные описания ключевых алгоритмов, способных улучшить ваш код на всех языках. Разработчики программного обеспечения, тестировщики и специалисты по поддержке кода узнают, как творчески решать вычислительные задачи с помощью алгоритмов.
Скачать книгу
Telegram
Книги для программистов (reserved)
Learning Algorithms: A Programmer's Guide to Writing Better Code (2020)
Автор: George Heineman
Автор: George Heineman
🎼 Переносим треки из Яндекс.Музыки в Spotify с помощью Python
Используя Python и Selenium, получим все плейлисты и альбомы из Яндекс.Музыки, а с помощью библиотеки spotipy перенесем фонотеку в Спотифай.
https://proglib.io/sh/h2ZBCo7sVG
Используя Python и Selenium, получим все плейлисты и альбомы из Яндекс.Музыки, а с помощью библиотеки spotipy перенесем фонотеку в Спотифай.
https://proglib.io/sh/h2ZBCo7sVG
Нелокальная переменная во вложенной функции
Прежде чем перейти к тому, что такое замыкание, мы должны сначала понять, что такое вложенная функция и нелокальная (nonlocal) переменная.
Функция, определенная внутри другой функции, называется вложенной функцией. Вложенные функции могут получать доступ к переменным из локальной области видимости объемлющих функций (enclosing scope).
В Python нелокальные переменные по умолчанию доступны только для чтения. Если нам необходимо их модифицировать, то мы должны объявить их явно как нелокальные (используя ключевое слово nonlocal).
Прежде чем перейти к тому, что такое замыкание, мы должны сначала понять, что такое вложенная функция и нелокальная (nonlocal) переменная.
Функция, определенная внутри другой функции, называется вложенной функцией. Вложенные функции могут получать доступ к переменным из локальной области видимости объемлющих функций (enclosing scope).
В Python нелокальные переменные по умолчанию доступны только для чтения. Если нам необходимо их модифицировать, то мы должны объявить их явно как нелокальные (используя ключевое слово nonlocal).
Что такое метаклассы — короткий обзор
Предположим, что вы знаете разницу между классами и объектами. Тогда метаклассы не должны быть для вас слишком уж сложными. Если кратко, то они являются классами для классов (отсюда и «мета» в их названии).
Проще говоря, в то время как классы являются чертежами для объектов, метаклассы являются чертежами для классов. Класс является описанием, когда мы создаем его экземпляр, тогда как метакласс является описанием класса, и существует только когда определен класс.
Самая простая реализация метакласса, которая ничего не делает, выглядит следующим образом
Предположим, что вы знаете разницу между классами и объектами. Тогда метаклассы не должны быть для вас слишком уж сложными. Если кратко, то они являются классами для классов (отсюда и «мета» в их названии).
Проще говоря, в то время как классы являются чертежами для объектов, метаклассы являются чертежами для классов. Класс является описанием, когда мы создаем его экземпляр, тогда как метакласс является описанием класса, и существует только когда определен класс.
Самая простая реализация метакласса, которая ничего не делает, выглядит следующим образом
Игра RE:Tail от Х5 Tech
Осторожно! В городе орудует злобный хакер, который сломал все процессы и поставил будущее под угрозу. Мир ждёт суперспеца, настоящего властелина кода, который поможет ритейлерам возродиться. Но кто же этот герой?
Хорошая новость: это не сводка сегодняшних новостей. Новость ещё лучше: выше описание новой онлайн-игры от X5 Tech «Re:tail», в которой именно ты сможешь продемонстрировать своё искусство покорения кода! Каждого участника ждут увлекательные задания с элементами искусственного интеллекта, 7 пасхалок и 1 скрытая мини-игра.
Переходи по ссылке, победи злодея и помоги построить ритейл будущего! https://re-tail.geecko.com
Осторожно! В городе орудует злобный хакер, который сломал все процессы и поставил будущее под угрозу. Мир ждёт суперспеца, настоящего властелина кода, который поможет ритейлерам возродиться. Но кто же этот герой?
Хорошая новость: это не сводка сегодняшних новостей. Новость ещё лучше: выше описание новой онлайн-игры от X5 Tech «Re:tail», в которой именно ты сможешь продемонстрировать своё искусство покорения кода! Каждого участника ждут увлекательные задания с элементами искусственного интеллекта, 7 пасхалок и 1 скрытая мини-игра.
Переходи по ссылке, победи злодея и помоги построить ритейл будущего! https://re-tail.geecko.com
👍1
Что такое *args и kwargs? (ч.1)
Иногда нельзя предсказать, сколько аргументов получит функция. Чтобы обработать их, используются специальные конструкции *args и kwargs.
На самом деле названия переменных – args, kwargs – это просто соглашение. Важны здесь только звездочки. Они обозначают сборку аргументов в коллекцию (список или словарь). Одна звездочка предназначена для обычных аргументов, две – для именованных.
Иногда нельзя предсказать, сколько аргументов получит функция. Чтобы обработать их, используются специальные конструкции *args и kwargs.
На самом деле названия переменных – args, kwargs – это просто соглашение. Важны здесь только звездочки. Они обозначают сборку аргументов в коллекцию (список или словарь). Одна звездочка предназначена для обычных аргументов, две – для именованных.
🔥1
Библиотека питониста | Python, Django, Flask pinned «Чему бы вы хотели научиться?»
Что такое *args и kwargs? (ч.2)
Можно заменить *args на *vars, а kwargs на options или другое слово. Программа будет работать корректно, но другие разработчики могут вас не понять.
Конструкции *args и kwargs можно использовать как самостоятельно, так и в комбинации с любым количеством обычных аргументов. Например, в коде выше первый параметр farg обрабатывается отдельно, а все остальные собираются в коллекцию.
Можно заменить *args на *vars, а kwargs на options или другое слово. Программа будет работать корректно, но другие разработчики могут вас не понять.
Конструкции *args и kwargs можно использовать как самостоятельно, так и в комбинации с любым количеством обычных аргументов. Например, в коде выше первый параметр farg обрабатывается отдельно, а все остальные собираются в коллекцию.
👍1
Мир регулярных выражений
Иногда непросто очистить текст с помощью определенных символов или фраз. Вместо этого нам необходимо использовать некоторые шаблоны. И здесь нам на помощь приходят регулярные выражения и соответствующий модуль Python.
Мы не будем обсуждать всю мощь регулярных выражений, а сосредоточимся на их применении — например, на разделении и замене данных.
Иногда непросто очистить текст с помощью определенных символов или фраз. Вместо этого нам необходимо использовать некоторые шаблоны. И здесь нам на помощь приходят регулярные выражения и соответствующий модуль Python.
Мы не будем обсуждать всю мощь регулярных выражений, а сосредоточимся на их применении — например, на разделении и замене данных.
Forwarded from Книги для программистов
Есть опыт и знания в IT, которыми Вы хотите поделиться?
Станьте автором технических статей вместе с Proglib и получайте достойное вознаграждение!
Библиотека программиста приглашает к сотрудничеству внештатных авторов,
которые хотят поделиться знаниями, пропиарить свой авторский блог или просто заработать.
Мы предлагаем удаленную работу, гибкий график, возможность зарабатывать до 12к за статью и выплаты 2 раза в месяц.
Мы не ограничиваем в количестве статей.
Постоянным авторам предусмотрены премии за лояльность.
Интересующие направления для написания статей:
• DevOps
• Блокчейн
• Информационная безопасность
• Дизайн интерфейсов (UX/UI)
• Ruby on Rails
• Rust
• Python
• C/C++/C#
• Java
• Go разработка
• Разработка игр
• Android-разработка
• iOS-разработка
• Системная аналитика
• Тестирование ПО
• Виртуальная реальность
• 1С
• Business Intelligence
• Интернет вещей
• Системы и сети
• Data Science, BigData и Machine Learning
• IT Management
Оставьте заявку на https://job.proglib.io/ и мы свяжемся с вами!
Станьте автором технических статей вместе с Proglib и получайте достойное вознаграждение!
Библиотека программиста приглашает к сотрудничеству внештатных авторов,
которые хотят поделиться знаниями, пропиарить свой авторский блог или просто заработать.
Мы предлагаем удаленную работу, гибкий график, возможность зарабатывать до 12к за статью и выплаты 2 раза в месяц.
Мы не ограничиваем в количестве статей.
Постоянным авторам предусмотрены премии за лояльность.
Интересующие направления для написания статей:
• DevOps
• Блокчейн
• Информационная безопасность
• Дизайн интерфейсов (UX/UI)
• Ruby on Rails
• Rust
• Python
• C/C++/C#
• Java
• Go разработка
• Разработка игр
• Android-разработка
• iOS-разработка
• Системная аналитика
• Тестирование ПО
• Виртуальная реальность
• 1С
• Business Intelligence
• Интернет вещей
• Системы и сети
• Data Science, BigData и Machine Learning
• IT Management
Оставьте заявку на https://job.proglib.io/ и мы свяжемся с вами!