🐣 Задача по Python #37
Описание
Напишите генератор, который будет генерировать последовательность чисел Фибоначчи, но с ограничением по максимальному значению. Генератор должен прекратить работу, когда очередное число Фибоначчи превысит заданное ограничение.
Примеры
Кодом делиться через pastebin.org или repl.it.
#задачи
Описание
Напишите генератор, который будет генерировать последовательность чисел Фибоначчи, но с ограничением по максимальному значению. Генератор должен прекратить работу, когда очередное число Фибоначчи превысит заданное ограничение.
Примеры
for num in fibonacci_with_limit(100):Свой вариант решения в комментарии 💭
print(num) # 1 1 2 3 5 8 13 21 34 55 89
Кодом делиться через pastebin.org или repl.it.
#задачи
👍20❤1
wxPython — библиотека, предоставляющая инструменты для создания графического пользовательского интерфейса (GUI).
Она основана на библиотеке wxWidgets(библиотека для C++) и позволяет разрабатывать кроссплатформенные приложения с помощью нативных элементов интерфейса для различных операционных систем.
wxPython включает в себя множество готовых виджетов и элементов интерфейса, таких как кнопки, текстовые поля, таблицы, деревья и другие, что позволяет легко создавать разнообразные пользовательские интерфейсы.
Библиотека так-же обеспечивает создание GUI-приложений, которые могут работать на различных операционных системах, таких как Windows, macOS и Linux.
Ставится командой ⚙️
Она основана на библиотеке wxWidgets(библиотека для C++) и позволяет разрабатывать кроссплатформенные приложения с помощью нативных элементов интерфейса для различных операционных систем.
wxPython включает в себя множество готовых виджетов и элементов интерфейса, таких как кнопки, текстовые поля, таблицы, деревья и другие, что позволяет легко создавать разнообразные пользовательские интерфейсы.
Библиотека так-же обеспечивает создание GUI-приложений, которые могут работать на различных операционных системах, таких как Windows, macOS и Linux.
Ставится командой ⚙️
pip3 install wxPython
Документация и примеры кода здесь :3👍33🤡3⚡2❤🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
tqdm — библиотека для создания красочных и информативных индикаторов выполнения (progress bar).
Она позволяет добавить удобное отображение прогресса выполнения и оценки времени ожидания в циклах и операциях, улучшая визуальное взаимодействие пользователя с программой.
Основные особенности и преимущества tqdm:
• Простота использования: tqdm предоставляет простой и интуитивно понятный способ добавить индикатор выполнения в циклы или операции.
• Гибкость: Библиотека позволяет настраивать внешний вид индикатора, включая стиль, цвет и текстовые сообщения.
• Оценка времени ожидания: tqdm автоматически вычисляет и отображает оценку времени, оставшегося до завершения операции, что полезно для ориентирования пользователей по временным рамкам.
Ставится командой ⚙️
Она позволяет добавить удобное отображение прогресса выполнения и оценки времени ожидания в циклах и операциях, улучшая визуальное взаимодействие пользователя с программой.
Основные особенности и преимущества tqdm:
• Простота использования: tqdm предоставляет простой и интуитивно понятный способ добавить индикатор выполнения в циклы или операции.
• Гибкость: Библиотека позволяет настраивать внешний вид индикатора, включая стиль, цвет и текстовые сообщения.
• Оценка времени ожидания: tqdm автоматически вычисляет и отображает оценку времени, оставшегося до завершения операции, что полезно для ориентирования пользователей по временным рамкам.
Ставится командой ⚙️
pip3 install tqdm
Документация и примеры кода здесь :3❤27👍7❤🔥2⚡1
🍳 Задача по Python #38
Описание
Нужно написать функцию calculate, которая на вход принимает единственное действительное число A, а на выход возвращает такое число x, которое удовлетворяет выражению x²+√x = A. Ответ должен быть с относительной погрешностью 10^(-6).
Примеры
Кодом делиться через pastebin.org или repl.it.
#задачи
Описание
Нужно написать функцию calculate, которая на вход принимает единственное действительное число A, а на выход возвращает такое число x, которое удовлетворяет выражению x²+√x = A. Ответ должен быть с относительной погрешностью 10^(-6).
Примеры
calculate(2.0) # 1.0Свой вариант решения в комментарии 💭
calculate(15.6) # 3.69823217
Кодом делиться через pastebin.org или repl.it.
#задачи
❤19👍3🌚3🔥1🤔1
zoneinfo — стандартный модуль, введенный в Python 3.9, который предоставляет удобные средства для работы с часовыми поясами и временем.
zoneinfo заменяет устаревший модуль pytz и обеспечивает более нативное и безопасное представление времени в различных часовых поясах.
Так-же zoneinfo обеспечивает более надежное и точное представление времени, а также позволяет избежать проблем с неоднозначностями и изменениями в часовых поясах. Модуль zoneinfo становится особенно полезным при разработке приложений, связанных с работой в разных географических регионах и требующих корректной работы с временем.
Подробнее тут :3
zoneinfo заменяет устаревший модуль pytz и обеспечивает более нативное и безопасное представление времени в различных часовых поясах.
Так-же zoneinfo обеспечивает более надежное и точное представление времени, а также позволяет избежать проблем с неоднозначностями и изменениями в часовых поясах. Модуль zoneinfo становится особенно полезным при разработке приложений, связанных с работой в разных географических регионах и требующих корректной работы с временем.
Подробнее тут :3
👍32🌚2❤1
Redis — это мощная in-memory база данных, которая предоставляет высокую производительность и надежность для хранения и обработки данных.
Redis широко используется для кэширования, управления сессиями, реализации очередей задач, а также для решения множества других задач, где скорость доступа к данным является критически важной.
Одной из ключевых особенностей Redis является его способность оперативно хранить данные, что обеспечивает быстрый доступ и низкую задержку.
В данном примере мы создали простую функцию get_product_info, которая первым шагом проверяет, есть ли информация о продукте в кэше Redis. Если информация есть, она возвращается немедленно. В противном случае, функция запрашивает информацию из основной базы данных и сохраняет ее в Redis с помощью метода set. Это позволяет нам избежать частых запросов к базе данных и значительно ускоряет ответы на запросы
Ставится командой ⚙️
Redis широко используется для кэширования, управления сессиями, реализации очередей задач, а также для решения множества других задач, где скорость доступа к данным является критически важной.
Одной из ключевых особенностей Redis является его способность оперативно хранить данные, что обеспечивает быстрый доступ и низкую задержку.
В данном примере мы создали простую функцию get_product_info, которая первым шагом проверяет, есть ли информация о продукте в кэше Redis. Если информация есть, она возвращается немедленно. В противном случае, функция запрашивает информацию из основной базы данных и сохраняет ее в Redis с помощью метода set. Это позволяет нам избежать частых запросов к базе данных и значительно ускоряет ответы на запросы
Ставится командой ⚙️
pip3 install redis
Документация и примеры кода здесь :3⚡24👍8❤2
🐥 Задача по Python #39
Описание
Напишите функцию longest_sequence, которая принимает строку в качестве аргумента и возвращает длину самой длинной последовательности одинаковых символов в этой строке. Символы регистронезависимы.
Примеры
Кодом делиться через pastebin.org или repl.it.
#задачи
Описание
Напишите функцию longest_sequence, которая принимает строку в качестве аргумента и возвращает длину самой длинной последовательности одинаковых символов в этой строке. Символы регистронезависимы.
Примеры
longest_sequence("aaabbBccc") # 3 (ccc)Свой вариант решения в комментарии 💭
longest_sequence("Hello, world!") # 2 (ll)
longest_sequence("aabbbccddddd") # 5 (dd)
longest_sequence("xyz") # 1 (каждый символ - отдельная последовательность)
Кодом делиться через pastebin.org или repl.it.
#задачи
👍16
pyarmor — инструмент для защиты и обфускации программ.
pyarmor позволяет зашифровать исходный код Python, скрыть имена переменных и функций, а также создавать самодостаточные исполняемые файлы. Это особенно полезно, когда вам нужно предоставить скомпилированные версии вашего кода, но вы не хотите раскрывать его структуру.
Достаточно скачать модуль и запустить команду
Таким образом, pyarmor предоставляет разработчикам инструмент для защиты и обфускации их кода, что может быть полезно в случаях, когда важно обезопасить интеллектуальную собственность или предотвратить несанкционированный доступ к коду.
Ставится командой ⚙️
pyarmor позволяет зашифровать исходный код Python, скрыть имена переменных и функций, а также создавать самодостаточные исполняемые файлы. Это особенно полезно, когда вам нужно предоставить скомпилированные версии вашего кода, но вы не хотите раскрывать его структуру.
Достаточно скачать модуль и запустить команду
pyarmor obfuscate file.py
для работыТаким образом, pyarmor предоставляет разработчикам инструмент для защиты и обфускации их кода, что может быть полезно в случаях, когда важно обезопасить интеллектуальную собственность или предотвратить несанкционированный доступ к коду.
Ставится командой ⚙️
pip3 install pyarmor
Документация и примеры кода здесь :3👍34🤡2❤1
AbstractSet — класс, который определяет абстрактный базовый класс для множественных типов данных.
AbstractSet из модуля typing представляет собой абстрактный базовый класс для множественных типов данных, таких как set, frozenset и другие классы, поддерживающие множественные операции. Он может быть использован для аннотирования переменных или параметров функций, когда ожидается объект, поддерживающий операции множеств.
В примере выше мы написали функцию которая принимает два аргумента типа AbstractSet[int], представляющих множества целых чисел. Затем мы используем операцию & для нахождения общих элементов в множествах и возвращаем результат.
Использование AbstractSet позволяет указать, что функция ожидает объекты, которые поддерживают операции множеств, независимо от конкретной реализации множества.
AbstractSet из модуля typing представляет собой абстрактный базовый класс для множественных типов данных, таких как set, frozenset и другие классы, поддерживающие множественные операции. Он может быть использован для аннотирования переменных или параметров функций, когда ожидается объект, поддерживающий операции множеств.
В примере выше мы написали функцию которая принимает два аргумента типа AbstractSet[int], представляющих множества целых чисел. Затем мы используем операцию & для нахождения общих элементов в множествах и возвращаем результат.
Использование AbstractSet позволяет указать, что функция ожидает объекты, которые поддерживают операции множеств, независимо от конкретной реализации множества.
👍18🤯5❤2
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚71🤯21😁12❤🔥6👍4
Дескрипторы — мощный инструмент, позволяющий контролировать доступ к атрибутам объектов классов.
Дескрипторы представляют собой специальные объекты, определяющие дандер-методы, такие как
В примере выше создается класс CelsiusToFahrenheit, который является дескриптором. Этот дескриптор определяет методы
Затем создается класс Temperature, у которого есть атрибут _celsius для хранения температуры в градусах Цельсия. В этом классе создается атрибут класса fahrenheit, который использует дескриптор CelsiusToFahrenheit.
При чтении значения атрибута fahrenheit, вызывается метод
Дескрипторы представляют собой специальные объекты, определяющие дандер-методы, такие как
__get__
, __set__
и __delete__
, которые управляют чтением, записью и удалением значений атрибутов. Дескрипторы часто используются для создания вычисляемых атрибутов, валидации входных данных и других аспектов, связанных с атрибутами класса.В примере выше создается класс CelsiusToFahrenheit, который является дескриптором. Этот дескриптор определяет методы
__get__
и __set__,
которые контролируют доступ к атрибуту fahrenheit. Метод __get__
вызывается при попытке чтения атрибута, а метод set - при попытке записи значения атрибута.Затем создается класс Temperature, у которого есть атрибут _celsius для хранения температуры в градусах Цельсия. В этом классе создается атрибут класса fahrenheit, который использует дескриптор CelsiusToFahrenheit.
При чтении значения атрибута fahrenheit, вызывается метод
__get__
дескриптора, который выполняет преобразование температуры из градусов Цельсия в градусы Фаренгейта. При записи значения в атрибут fahrenheit, вызывается метод __set__
, который выполняет обратное преобразование и сохраняет значение в атрибут _celsius.👍27❤3🤔2