Напишем асинхронную функцию с помощью библиотек asyncio и aiohttp:
Этот скрипт пингует несколько сайтов одновременно, не ожидая завершения каждого запроса последовательно. Это значительно ускоряет выполнение, особенно когда есть задержки на сервере или в сети.
Основные функции:
• async — определение асинхронной функции (корутины)
• await — приостановка выполнения функции до тех пор, пока не завершится другая корутина
• aiohttp.ClientSession — выполнение HTTP-запросов
🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19👍6🤝5
👍12🔥9
Автоматический бэкап при открытии файла через кастомный менеджер контекста!
#средничкам
В прошлой части, мы создали функцию, которая делает резервную копию переданного файла. Модернизируем систему бэкапов, добавив эту функцию в свой контекстный менеджер:
Инициализировали класс, функция бэкапа передается по умолчанию и будет срабатывать автоматически при передачи файла в наш менеджер. Теперь определим логику метода входа
Режим открытия поставил на запись, тк на чтение создание копии не нужно. Определим метод выхода
Пример работы:
🔥 Теперь при открытии файла на запись будет автоматически создаваться резервная копия. Этот пример только пример и как минимум не хватает обработки исключений
👉 Python Ready | #практика
#средничкам
В прошлой части, мы создали функцию, которая делает резервную копию переданного файла. Модернизируем систему бэкапов, добавив эту функцию в свой контекстный менеджер:
class BackupContextManager():
def __init__(self, filepath, backup_func=file_backup):
self.filepath = filepath
self.backup_func = backup_func
self.file = None # Инициализируем self.file
Инициализировали класс, функция бэкапа передается по умолчанию и будет срабатывать автоматически при передачи файла в наш менеджер. Теперь определим логику метода входа
__enter__
, который открывает файл:def __enter__(self):
self.backup_func(self.filepath)
self.file = open(self.filepath, 'w')
return self.file
Режим открытия поставил на запись, тк на чтение создание копии не нужно. Определим метод выхода
__exit__
:def __exit__(self, exc_type, exc_val, exc_tb):
self.file.close()
Пример работы:
with BackupContextManager('C:\Documents\important_documents.txt') as f:
print(f'{f} файл открыт')
🔥 Теперь при открытии файла на запись будет автоматически создаваться резервная копия. Этот пример только пример и как минимум не хватает обработки исключений
try-except
и проверки существования файла, но вы уже можете пользоваться этим прототипом!Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥5❤1👎1
В этой статье:
• Идеи для начинающих разработчиков.
• Идеи проектов для Data Science.
• Проекты для веб-разработки.
🔊 Интересно? Читай полностью на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍5👎1
В этой шпаргалке собраны самые популярные методы библиотеки os, которые позволят вам взаимодействовать с операционной системой. А также с переменными окружения и процессами.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍7
В этой статье:
• Разбор модели OSI и всех ее уровней.
• Модель TCP/IP и ее особенности.
• Сравнение моделей.
🔊 Продолжай читать на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Это ресурс, в котором собрано 319 апишек для разных сервисов: от GitHub и Postman до новостных или погодных API. Конечно, могут быть ограничения по количеству запросов, но и бесплатного лимита должно хватить.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍4👎1
•
reverse()
— выполняет разворот списка, располагает элементы в противоположном порядке. При этом новый объект не создается, а изменяется уже существующий.•
sort()
— сортирует список, принимает два необязательных аргумента reverse
для разворота итогового списка и key
— функция, которая служит ключом для сравнения сортировок. Также как и reverse
не создает новых объектов, а изменяет существующий. 🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍10🤝7
Цикл лекций по программированию на Python от преподавателя ЛФИ МФТИ.
Курс записан для студентов 1-го курса, так что отлично подойдет тому, кто только начинает знакомиться с программированием, состоит из 15 лекций лайв-формата.
Ссылочка на плейлист: YouTube🖤
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥6
🔥13👍9👎1
•
get()
— возвращает значение для указанного ключа, если ключ находится в словаре. Если ключ не найден, метод вернет None.•
setdefault()
— позволяет извлекать значение по указанному ключу, если он существует. Если ключа нет, функция вставляет ключ с указанным значением по умолчанию и возвращает это значение🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25🤝7👍2