⚡️ Модули это тоже объекты
Мы можем получать свойства даже у модулей. У них есть имя (
Кстати, помимо обычного import мы так же можем получить доступ к модулю, используя
#теория
Мы можем получать свойства даже у модулей. У них есть имя (
__name__
), документация (__doc__
) и файл, в котором он находится (__file__
).Кстати, помимо обычного import мы так же можем получить доступ к модулю, используя
importlib.import_module()
или __import__()
.#теория
⚡️ Какие планы?
Выложить пост через 10 минут? Или, может, отправить напоминание начать работать через час? В любом случае это не проблема с shed.
Модуль позволяет определять события, которые должны произойти через определённое время. К тому же он может работать в многопоточном режиме.
Об этих всех фишках подробнее рассказывают в документации.
#миниурок #shed
Выложить пост через 10 минут? Или, может, отправить напоминание начать работать через час? В любом случае это не проблема с shed.
Модуль позволяет определять события, которые должны произойти через определённое время. К тому же он может работать в многопоточном режиме.
Об этих всех фишках подробнее рассказывают в документации.
#миниурок #shed
⚡️ Pattern matching в Python
Нововведение в Python 3.10. Является синтаксическим сахаром для большого количества if/else.
С его помощью мы можем определять поведение объекта на основе входящих данных. И при этом писать меньше кода.
Это switch/case, только возможностей в разы больше. Они все описаны в PEP 636.
#теория
Нововведение в Python 3.10. Является синтаксическим сахаром для большого количества if/else.
С его помощью мы можем определять поведение объекта на основе входящих данных. И при этом писать меньше кода.
Это switch/case, только возможностей в разы больше. Они все описаны в PEP 636.
#теория
⚡️ Задачка с собеседования | #Medium
Условие:
Вам нужно проверить, является ли число простым. На вход идут числа от 2 до 10^20. Ваша задача — найти самое оптимальное решение.
Пример:
is_prime(2) ➞ True
is_prime(4) ➞ False
is_prime(1013) ➞ True
📌 Пишите ваше решение в комментариях. Решение будет через 2 часа на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам нужно проверить, является ли число простым. На вход идут числа от 2 до 10^20. Ваша задача — найти самое оптимальное решение.
Пример:
is_prime(2) ➞ True
is_prime(4) ➞ False
is_prime(1013) ➞ True
📌 Пишите ваше решение в комментариях. Решение будет через 2 часа на этом канале. 👇
#Задачка_с_собеседования
⚡️ Модуль collections
Это изменённые контейнеры (dict, list, set, tuple), которые могут сильно помочь при решении задач.
#миниурок #collections
Это изменённые контейнеры (dict, list, set, tuple), которые могут сильно помочь при решении задач.
Counter(iter)
— подсчитывает количество повторений объекта в iter. С помощью most_common(n)
можно получить n самых повторяющихся объектов.defaultdict(default_factory)
— создаёт и подставляет новый объект, созданный default_factory, если не переданного ключа не существует.namedtuple(typename, field_names)
— Создаёт тип кортежа с именованными полями.#миниурок #collections
⚡️
#теория
__getattr__
и __getattribute__
__getattribute__
вызывается каждый раз, когда мы пытаемся получить атрибут экземпляра. Даже если это произошло внутри класса с помощью self.__getattr__
вызывается только в том случае, если атрибут не был найден. Его можно спокойно переопределять.#теория
⚡️ Работаем с путями
Зачем изобретать велосипед с os.path, если с Python3.4 существует pathlib? Этот модуль упрощает работу с путями и добавляет новые функции.
Например, мы можем писать пути, которые будут нормально работать на Windows и Linux. Об этом рассказывается тут.
А если вам пришлось редактировать старый код с os, то это не проблема, ведь все пути это PathLike объекты.
#миниурок #pathlib
Зачем изобретать велосипед с os.path, если с Python3.4 существует pathlib? Этот модуль упрощает работу с путями и добавляет новые функции.
Например, мы можем писать пути, которые будут нормально работать на Windows и Linux. Об этом рассказывается тут.
А если вам пришлось редактировать старый код с os, то это не проблема, ведь все пути это PathLike объекты.
#миниурок #pathlib
⚡️ Больше нет проблем
Помните, рассказывал про проблемы с вычислением float? Так вот, в Python есть решение этой проблемы и это decimal.
Этот модуль может быстро и правильно округлять арифметические операции с плавающей точкой. Теперь 0.1 + 0.2 будет именно 0.3.
И это всё тот же float. То есть вы можете складывать значения, вычитать, умножать, делить, сравнивать, и так далее.
#теория
Помните, рассказывал про проблемы с вычислением float? Так вот, в Python есть решение этой проблемы и это decimal.
Этот модуль может быстро и правильно округлять арифметические операции с плавающей точкой. Теперь 0.1 + 0.2 будет именно 0.3.
И это всё тот же float. То есть вы можете складывать значения, вычитать, умножать, делить, сравнивать, и так далее.
#теория