В Python могли встроить вирус. Все из-за утечки админского токена языка через публичный Docker-контейнер.
Команда JFrog Security Research обнаружила и сообщила об утечке токена доступа с правами администратора к GitHub-репозиториям Python, PyPI и Python Software Foundation.
Этот токен был найден в публичном Docker-контейнере, размещённом на Docker Hub.
Подробности👇
#статьи
@python_practics
Команда JFrog Security Research обнаружила и сообщила об утечке токена доступа с правами администратора к GitHub-репозиториям Python, PyPI и Python Software Foundation.
Этот токен был найден в публичном Docker-контейнере, размещённом на Docker Hub.
Подробности👇
#статьи
@python_practics
🤔4👍2
Внимание! - Вопрос!
Расскажите о принципе программирования YAGNI
Принцип You Aren’t Gonna Need It («Тебе это не понадобится») говорит о том, что нежелательно оставлять в продакшене «точки расширения» (места, предназначенные только для того, чтобы позволить вам в будущем легко добавить новый функционал). Конечно, мы не говорим о случаях, когда речь идет об уже заказанном функционале. Такие точки расширения вносят ненужную сложность и увеличивают размер вашей кодовой базы.
#вопросы_из_собеседований
@python_practics
Расскажите о принципе программирования YAGNI
#вопросы_из_собеседований
@python_practics
👍8
Задача:
Найдите число с наибольшим количеством цифр.
Если два числа в массиве аргументов имеют одинаковое количество цифр, верните первое число в массиве.
Пример:
#задачник
@python_practics
Найдите число с наибольшим количеством цифр.
Если два числа в массиве аргументов имеют одинаковое количество цифр, верните первое число в массиве.
Пример:
100 1000 10 —> 1000
#задачник
@python_practics
👍3
Цепочка вызовов функций
В Python есть возможность вызывать несколько функций в одной строке.
👍 - если было полезно
#полезные_сниппеты
@python_practics
В Python есть возможность вызывать несколько функций в одной строке.
👍 - если было полезно
#полезные_сниппеты
@python_practics
👍24
Внимание! - Вопрос!
Расскажите о принципе программирования SLAP
Принцип Single Level of Abstraction Principle («Принцип единого уровня абстракций») означает, что функции должны иметь единый уровень абстракции. Скажем, функция, читающая input, не должна также обрабатывать полученные данные. Для этого она должна задействовать отдельную функцию, находящуюся на другом, более низком уровне абстракции. Чем более общей является функция и чем больше других функций она использует, тем выше она располагается в абстракционной иерархии.
#вопросы_из_собеседований
@python_practics
Расскажите о принципе программирования SLAP
#вопросы_из_собеседований
@python_practics
👍4
Pydantic
Одна из лучших и самых быстрых библиотек Python для валидации данных, логика которой написана на Rust. С помощью Pydantic можно быстро валидировать данные, исходя из наложенных фильтров, ограничений по возможному типу и формату данных.
Дает несколько методов использования встроенных аннотаций в Python и гарантирует, что валидируемые данные со 100% вероятностью соответствуют наложенным на них требованиям.
Подробнее👇
#фреймворки_библиотеки
@python_practics
Одна из лучших и самых быстрых библиотек Python для валидации данных, логика которой написана на Rust. С помощью Pydantic можно быстро валидировать данные, исходя из наложенных фильтров, ограничений по возможному типу и формату данных.
Дает несколько методов использования встроенных аннотаций в Python и гарантирует, что валидируемые данные со 100% вероятностью соответствуют наложенным на них требованиям.
Подробнее👇
#фреймворки_библиотеки
@python_practics
👍6❤1
Перестановка значений
Быстрый способ поменять местами две переменные без использования дополнительной.
👍 - если было полезно
#полезные_сниппеты
@python_practics
Быстрый способ поменять местами две переменные без использования дополнительной.
👍 - если было полезно
#полезные_сниппеты
@python_practics
👍15
Эволюция форматирования строк в Python
Часто при написании кода на Python нам требуется представить объект определенным образом или включить значения каких-либо выражений внутрь строки. Для этого мы можем использовать форматирование строк. При этом в Python существуют сразу три способа форматирования строк:
• оператор %;
• строковый метод format();
• f-строки.
Причиной такого разнообразия является развитие языка Python и постоянное совершенствование его инструментария. Один способ форматирования устаревает, ему на смену приходит новый, более удобный и практичный. Однако устаревшие способы форматирования строк было решено оставить в Python, в первую очередь для обеспечения обратной совместимости со старыми версиями языка. Каждый из способов форматирования может использоваться и по сей день.
В этой статье автор рассмотрел эволюцию способов форматирования строк и разберем их преимущества и недостатки.
Подробности👇
#статьи
@python_practics
Часто при написании кода на Python нам требуется представить объект определенным образом или включить значения каких-либо выражений внутрь строки. Для этого мы можем использовать форматирование строк. При этом в Python существуют сразу три способа форматирования строк:
• оператор %;
• строковый метод format();
• f-строки.
Причиной такого разнообразия является развитие языка Python и постоянное совершенствование его инструментария. Один способ форматирования устаревает, ему на смену приходит новый, более удобный и практичный. Однако устаревшие способы форматирования строк было решено оставить в Python, в первую очередь для обеспечения обратной совместимости со старыми версиями языка. Каждый из способов форматирования может использоваться и по сей день.
В этой статье автор рассмотрел эволюцию способов форматирования строк и разберем их преимущества и недостатки.
Подробности👇
#статьи
@python_practics
👍4👎1
PyCharm. Профессиональная работа на Python
Чему вы научитесь:
• Основам работы и настройке среды разработки PyCharm;
• Использованию инструментов и плагинов для повышения производительности;
• Отладке и тестированию Python-кода;
• Работа с проектами и версиями кода;
• Автоматизации задач и интеграции с другими инструментами разработки.
"PyCharm. Профессиональная работа на Python" научит вас использовать все возможности одной из самых мощных IDE для Python. Вы изучите как настраивать среду разработки, эффективно отлаживать и тестировать код, а также работать с проектами и автоматизировать задачи для повышения вашей продуктивности.
Книга в формате pdf👇
#курсы_книги
@python_practics
Чему вы научитесь:
• Основам работы и настройке среды разработки PyCharm;
• Использованию инструментов и плагинов для повышения производительности;
• Отладке и тестированию Python-кода;
• Работа с проектами и версиями кода;
• Автоматизации задач и интеграции с другими инструментами разработки.
"PyCharm. Профессиональная работа на Python" научит вас использовать все возможности одной из самых мощных IDE для Python. Вы изучите как настраивать среду разработки, эффективно отлаживать и тестировать код, а также работать с проектами и автоматизировать задачи для повышения вашей продуктивности.
Книга в формате pdf👇
#курсы_книги
@python_practics
👍5
Какая функция используется для создания комплексного числа?
Anonymous Quiz
88%
complex()
9%
com()
3%
comex()
Hamster Kombat: автоматизация фарма и тапанья хомяка через Python с деплоем
Сейчас наблюдается невероятный интерес к игре Hamster Kombat. Все тапают этого несчастного хомяка в надежде, что когда-то можно будет продать монеты за реальные деньги. Пока мы все в ожидании, автор решил рассказать, как автоматизировать процесс фарма и тапанья хомяка через Python, используя один интересный проект.
Подробности👇
#статьи
@python_practics
Сейчас наблюдается невероятный интерес к игре Hamster Kombat. Все тапают этого несчастного хомяка в надежде, что когда-то можно будет продать монеты за реальные деньги. Пока мы все в ожидании, автор решил рассказать, как автоматизировать процесс фарма и тапанья хомяка через Python, используя один интересный проект.
Подробности👇
#статьи
@python_practics
👎5👍4
Внимание! - Вопрос!
Расскажите о принципе программирования SOLID
SOLID - это аббревиатура от 5 принципов, описанных Робертом Мартином.
S: Single Responsibility Principle (Принцип единственной ответственности).
Каждый класс должен решать лишь одну задачу.
O: Open-Closed Principle (Принцип открытости-закрытости).
Программные сущности (классы, модули, функции) должны быть открыты для расширения, но не для модификации.
L: Liskov Substitution Principle (Принцип подстановки Барбары Лисков).
Необходимо, чтобы подклассы могли бы служить заменой для своих суперклассов.
I: Interface Segregation Principle (Принцип разделения интерфейса).
Создавайте узкоспециализированные интерфейсы, предназначенные для конкретного клиента. Клиенты не должны зависеть от интерфейсов, которые они не используют.
D: Dependency Inversion Principle (Принцип инверсии зависимостей).
Объектом зависимости должна быть абстракция, а не что-то конкретное.
#вопросы_из_собеседований
@python_practics
Расскажите о принципе программирования SOLID
S: Single Responsibility Principle (Принцип единственной ответственности).
Каждый класс должен решать лишь одну задачу.
O: Open-Closed Principle (Принцип открытости-закрытости).
Программные сущности (классы, модули, функции) должны быть открыты для расширения, но не для модификации.
L: Liskov Substitution Principle (Принцип подстановки Барбары Лисков).
Необходимо, чтобы подклассы могли бы служить заменой для своих суперклассов.
I: Interface Segregation Principle (Принцип разделения интерфейса).
Создавайте узкоспециализированные интерфейсы, предназначенные для конкретного клиента. Клиенты не должны зависеть от интерфейсов, которые они не используют.
D: Dependency Inversion Principle (Принцип инверсии зависимостей).
Объектом зависимости должна быть абстракция, а не что-то конкретное.
#вопросы_из_собеседований
@python_practics
❤4👍2