NeuroCatalog | Каталог Нейросетей Нейросети | Midjourney | Промты | AI | Prompts | OpenAi | ChatGPT | Искусственный Интеллект
1.41K subscribers
235 photos
49 videos
6 files
117 links
Последние тренды в нейросетях и ИИ.
Download Telegram
Optional_return

Функция optional_return в модуле typing используется для определения функций, которые могут возвращать значение или None.
Это позволяет лучше документировать поведение функции и дает подсказки при использовании ее результата, не опасаясь ошибки, если будет возвращен None.

В данном примере функция find_user может вернуть имя пользователя, если оно найдено в списке, или None, если такого имени нет. Благодаря аннотации Optional[str] мы явно указываем, что возвращаемое значение может быть строкой или None.

👉
Декораторы

Декораторы - это функции, которые изменяют поведение других функций. Они полезны для протоколирования, контроля доступа, мемоизации и многого другого.

Asyncio
Модуль asyncio предоставляет основу для асинхронного программирования. Это полезно для связанного с вводом-выводом и высокоуровневого структурированного сетевого кода.

👉
Различные вычисления, многопоточность, асинхронность и мультипроцессность в Python

Всем привет! Меня зовут Дмитрий Первушин, я лидер Python-компетенций трайба ИСУ в Сбере.

Эта статья рассчитана на людей, которые уже знакомы с Python, хотя бы на уровне junior+. Я объясню, какие есть отличия и особенности в многопоточности, асинхронности и мультипроцессности в Python, где и когда они используются. Как говорится в пословице: «Всё познаётся в сравнении», именно в таком стиле я подготовил примеры. Кроме этого, буду специально делать ошибки и рассматривать неправильные подходы, чтобы можно было сразу разобраться, убедиться и запомнить, почему так делать нельзя и какой другой подход в этом случае нужно использовать.

https://habr.com/ru/companies/sberbank/articles/829098/

👉
🚀 Не надо тратить миллионы на билеты, туры и путешествия. Хватит и грошей.
Ссылка на канал, подписывайтесь: @cheapglobus
Как правильно записать данные в файл? Что может пойти не так в ином случае?

Когда вы используете инструкцию open без контекстного менеджера и перед закрытием файла возникает какое-либо исключение, могут возникнуть проблемы с памятью. В таком случае файл будет повреждён.
Если вы используете инструкцию with для открытия файла и возникает проблема, Python гарантирует, что файл будет корректно закрыт.

👉
Метод join

Метод join() позволяет объединить элементы последовательности (списка, кортежа и т.д.) в строку.

Основные моменты:

— Метод принадлежит строке, вызывается на разделителе.
— В качестве разделителя можно использовать любую строку.
— В результате получится строка, где между элементами последовательности вставлен разделитель.

👉
Какие различия есть между методами для списков append() и extend()?

Методы append() и extend() для списков имеют разное назначение:

— append() добавляет один элемент в конец списка, принимая в качестве аргумента этот элемент.

my_list.append(10) — добавит число 10 в конец списка my_list.

— extend() расширяет список добавляя в него несколько элементов сразу. В качестве аргумента принимается итерируемый объект (список, кортеж и т.п.).

my_list.extend([10, 20, 30]) — добавит числа 10, 20, 30 в конец списка my_list.

👉
Напишите функцию, которая будет принимать два списка чисел (вложенный и обычный) и проверять, все ли числа в подсписках вложенного принадлежат множеству чисел второго, обычного списка

Примечания:
1) пустой список считаем валидным подмножеством множества чисел второго списка
2) в каждом отдельном списке (как во вложенных, так и во втором, обычном списке) числа будут уникальными

👉
Бот-парсер маркетплейса на Python

В этой статье я решил показать один из методов парсинга на Python на примере маркетплейса Wildberries.

Суть подхода в том, что мы будем не разбирать запрошенную html страницу по ссылке, а будем использовать API сайта, который используется сервисом для получения и отображения всех товаров требуемой категории.

https://habr.com/ru/companies/amvera/articles/834582/

👉
sets.isuperset()

Функция sets.isuperset() позволяет проверить, является ли один set подмножеством другого.
Она принимает в качестве аргумента другой set и возвращает boolean значение — True если первый set содержит все элементы второго, и False в противном случае.

Это полезно при работе с множествами для проверки включения, или при проверке покрытия тестами.
Также это используется для проверки включения при работе с данными, чтобы убедиться, что один набор данных полностью покрывает другой по каким-либо критериям.

👉
issubclass()

Функция принимает два параметра:
class — класс, который нужно проверить.
classinfo — класс, тип или кортеж классов и типов.

issubclass() проверяет, является ли аргумент класса (class) подклассом другого класса (classinfo) и возвращает значение типа bool (True/False).

👉
Vibora

Vibora — это фреймворк для создания веб-приложений на языке Python. Он является асинхронным и предоставляет инструменты для создания высокопроизводительных веб-серверов и веб-приложений.

В этом примере мы создаем экземпляр приложения Vibora, определяем обработчик маршрута для корневого URL ("/"), который возвращает строку «Привет, мир!», и запускаем веб-сервер на порту 8000.

👉
Mypy

Mypy — это статический анализатор типов для Python. Он позволяет добавить статическую типизацию в Python и выявлять ошибки, связанные с типами, на этапе компиляции.

Для использования Mypy нужно аннотировать переменные специальным синтаксисом, в примере мы указали, что функция sum_list принимает список целых чисел и возвращает целое число.

После запуска, если типы не совпадают, Mypy выдаст ошибку, как показано в примере.


👉
Завершение программы

exit() — это функция, которая позволяет завершить выполнение программы и возвратить код возврата операционной системе.
Принимает один необязательный числовой аргумент — код возврата программы. По умолчанию это 0, что означает успешное завершение, а код возврата отличный от нуля сигнализирует об ошибке или нештатной ситуации.

Используется для завершения программы в случае критической ошибки, когда продолжение работы невозможно и позволяет гибко управлять кодами возврата в зависимости от ситуации.

👉