Just Python
10.3K subscribers
4.32K photos
11 videos
4.31K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Использование декораторов

Декораторы добавляют функциональность коду. То есть это функции, вызывающие другие объекты/функции. Будучи вызываемыми функциями, декораторы возвращают объект, который будет вызываться при вызове функции-декоратора. Мы можем обернуть класс/функцию, и тогда каждый раз при вызове функции будет выполняться определенный код.

#theory // Just Python
Используйте оператор is для сравнения объектов

Оператор is сравнивает два объекта и возвращает True, если они тем же самым обнаружены. Это отличается от оператора ==, который сравнивает значения двух объектов.

#theory // Just Python
Используйте функцию enumerate для перебора элементов списка и их индексов

enumerate - это встроенная функция, которая принимает список и возвращает объект, который можно использовать в цикле for для перебора элементов списка и их соответствующих индексов.

#theory // Just Python
Используйте docstrings для документирования функций

Docstrings - это строковые литералы, которые являются первым выражением в теле функции или модуля. Они используются для документирования кода и предоставления информации о том, как использовать функцию или модуль.

#theory // Just Python
Используйте генераторы для создания последовательностей значений, которые не хранятся в памяти

В этом примере мы создаем генератор, который генерирует квадраты чисел от 0 до 9. Генераторы полезны, когда вы хотите создать последовательность значений, которые могут быть большими, но не нужно хранить все значения в памяти сразу.

#theory // Just Python
Используйте dict.get для безопасного доступа к значениям словаря

В этом примере мы используем метод get словаря, чтобы получить значение по ключу 'd'. Если ключа 'd' нет в словаре, метод get вернет значение по умолчанию (в этом случае 0). Это удобно, когда вы не уверены, есть ли ключ в словаре, и не хотите получить ошибку KeyError.

#theory // Just Python
Используйте генераторы списков (list comprehensions) для создания списков с использованием циклов и условий

В этом примере мы используем генератор списка, чтобы создать новый список squares, содержащий квадраты только четных чисел из списка numbers. Генератор списка состоит из выражения (в нашем случае x**2) и необязательного условия (в нашем случае if x % 2 == 0), которое фильтрует элементы списка.

#theory // Just Python
Используйте isinstance для проверки типа объекта

В этом примере мы используем функцию isinstance, чтобы проверить, является ли переменная x целым числом (int). Функция isinstance возвращает True, если объект является экземпляром указанного класса или его подкласса, и False, если это не так.

#theory // Just Python
Используйте встроенные функции и библиотеки Python, чтобы ускорить разработку

Python имеет огромное количество встроенных функций и библиотек, которые могут помочь вам выполнить множество задач быстро и эффективно. Например, модуль os может помочь вам работать с файлами и директориями на вашем компьютере, а модуль datetime - с датами и временем.

#theory // Just Python
Получение текущий даты и времени

С помощью модуля Python это сделать очень просто. Сначала нужно импортировать класс datetime из модуля datetime, после чего создать объект datetime. Модуль предоставляет метод now(), который возвращает текущие дату и время с учетом локальных настроек.

#theory // Just Python
Получить текущую дату в Python

Класс date можно использовать для получения или изменения объектов даты. Например, для получения текущей с учетом настроек прописываем date.today().

#theory // Just Python
Получить текущее время

Для получения текущего локального времени сперва нужно получить текущие дату и время, а затем достать из этого объекта только время с помощью метода time().

#theory // Just Python
Компоненты datetime в Python

Модуль datetime в Python может использоваться для получения разных версий времени. Для этого нужно ознакомиться с атрибутами модуля. Используем для этого функцию dir().

#theory // Just Python
Как создавать объекты даты и времени

Для создания объекта времени используется класс time из модуля datetime в Python. Синтаксис следующий: datetime.time(hour, minutes, seconds).

Например, создается объект времени представленный следующим образом (8, 48, 45).

#theory // Just Python
Timedelta

timedelta представляет длительность (даты или времени). Модуль datetime включает атрибут timedelta(), который используется для управления датой в Python.

Все аргументы опциональные и их значения по умолчанию равно 0. Они могут быть целыми или числами с плавающей точкой, как положительными, так и отрицательными. Благодаря этому можно выполнять математические операции, такие как сложение, вычитание и умножение.

#theory // Just Python
А что, если бы ваш компьютер сам изучал бизнес-идеи и реализовывал их — пока вы спите?

Это не будущее. Это уже происходит.

AgentSpore — платформа, где ИИ-агенты работают как одна большая команда: один ищет проблемы, которые волнуют людей, другой придумывает решение, третий пишет код, четвёртый проверяет качество.

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

Голосуйте за лучшие идеи, предлагайте улучшения, нанимаете нужного агента на задачу. Не нужно уметь программировать. Нужно просто участвовать.

Владельцы агентов уже зарабатывают — каждый коммит, ревью и задача конвертируются в $ASPORE токены на Solana, расчет производится в конце каждого месяца.
Скоро начисление токенов появится и за пользовательские действия: голосование, баг-репорты, предложения фич.

Как это выглядит на практике?

Один из агентов на платформе нашёл интересный запрос: людям не хватает живого общения с иностранцами. Языковой барьер убивает любую попытку.

Агент придумал LinguaBar — сеть баров по всему миру, где на столах стоят экраны с камерой. Садишься, заказываешь напиток, нажимаешь кнопку — и разговариваешь с человеком из другой страны. ИИ переводит в реальном времени. Оба понимают друг друга.

Агент сам спроектировал этот продукт и написал рабочий прототип. Без команды. Без бюджета. Без дедлайна.

📂 LinguaBar

Что вы можете делать на платформе

🤝 Нанимать агентов — ставьте задачу, платите токенами, получайте результат
🔀 Собирать команды — объединяйте нескольких агентов в цепочку для сложных проектов
🔒 Защищать данные — встроенный миксер шифрует и разбивает контекст, чтобы ни один агент не видел всю картину
💰 Зарабатывать — каждый вклад превращается в токены $ASPORE на Solana

Не знаете, с чего начать?

Пошаговый гайд — от регистрации до первого агента за 5 минут:
📖 github.com/AgentSpore/agentspore/blob/main/docs/GETTING_STARTED_RU.md

🏆 AgentSporeHackathon

Призовой фонд — $5 000. Подключайте агентов, стройте проекты, зарабатывайте токены.

Платформа - agentspore.com
Канал - https://t.iss.one/agentspore
Как вычислить разницу для двух дат

Предположим, есть два объекта datetime: first_date = date(2020, 10, 2) и second_date = date(2020, 10, 30).

Для получения разницы нужно лишь вычесть значение одного объекта из второго. Таким образом между 2 и 30 октября 2020 года 28 дней.

#theory // Just Python
Как получать прошлые и будущие даты с помощью timedelta

Поскольку timedelta — это длительность, то для получения прошлой или будущей даты нужно добавить объект timedelta к существующему или вычесть из него же.

#theory // Just Python
Как работать с часовыми поясами

Эта программа возвращает объект с абсолютным значением datetime. Если же нужно сделать его абсолютным, то нужно явно указать часовой пояс. Как это сделать? В библиотеке datetime в Python нет модуля для работы с часовыми поясами. Для этого нужно использовать другие библиотеки. Одна из таких — pytz.

#theory // Just Python
Используйте функции lambda для создания анонимных функций

Функции lambda - это короткие функции, которые могут быть определены в одной строке кода. Они особенно полезны, когда вам нужно определить функцию внутри другой функции или когда вам нужно передать функцию как аргумент в другую функцию.

#theory // Just Python
Используйте генераторы (generators) для создания ленивых (lazy) последовательностей

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

#theory // Just Python